不使用window.open(),只有等打开的窗口关闭后,才会执行后面的js代码
时间: 2024-02-12 09:02:49 浏览: 54
如果你不想使用`window.open()`方法打开窗口,也可以在当前窗口中打开链接,并在打开链接后监听`window`对象的`unload`事件,当链接页面关闭时执行后续的JavaScript代码。
例如,你可以在点击一个链接时打开一个新页面,并监听`unload`事件,当链接页面关闭时执行后续的JavaScript代码,如下所示:
```html
<a href="http://example.com" id="myLink" target="_blank">打开链接</a>
<script>
$(document).ready(function() {
$('#myLink').click(function(event) {
event.preventDefault();
var url = $(this).attr('href');
var newWindow = window.open(url, '_blank');
$(window).on('unload', function() {
// 链接页面关闭后执行后续的 JavaScript 代码
doSomething();
});
});
});
function doSomething() {
// 后续的 JavaScript 代码
}
</script>
```
在上面的代码中,我使用了`$(this).attr('href')`获取链接的URL,并使用`window.open()`方法在当前窗口中打开链接。然后,我使用`$(window).on('unload', function() {...})`方法监听了`unload`事件,并在事件处理程序中执行`doSomething()`函数,当链接页面关闭时会触发`unload`事件,从而执行后续的JavaScript代码。注意,在链接的`<a>`标签中需要设置`target="_blank"`属性,以在新窗口中打开链接。
阅读全文