【发布时间】:2018-04-01 06:58:00
【问题描述】:
我有这个 javascript 代码,当浏览器检测到用户是否关闭弹出窗口时运行。它可以在浏览器 firefox、opera、chrome 中运行,但我在 Internet Explorer 中遇到错误(错误是荷兰语,所以我尝试翻译)。它确实会打开一个弹出窗口,但它也会在 Internet Explorer 中打开一个新选项卡,这与其他浏览器不同。
这是 JS 代码。报错就行了if newWindow.closed !== false
无法关闭未定义引用的属性或检索 引用空值
function hyperLink(link) {
var newWindow = window.open(link.href, "Hyperlink", "status=yes,toolbar=yes,scrollbars=yes,resizable=yes,width=" + screen.width / 1.5 + ",height=" + screen.height / 1.5 + "");
var interval = window.setInterval(function () {
if (newWindow.closed !== false) // for opera
{
$.ajax({
url: "index.php?route=extension/module/filter_product/getSupplierName",
type: "POST",
data: {supplier_name : link.name},
success: function(result) {
// your success handler
/*console.log("success");
console.log(result);*/
}
});
window.clearInterval(interval);
}
}, 500);
}
HTML 代码:
<div class="col-md-3 text-center hyperlink-image">
<a href="<?php echo $supplier['href']; ?>" onclick="hyperLink(this)" target="Hyperlink" name="<?php echo $supplier['name']; ?>">
<img src="<?php echo $supplier['thumb']; ?>" alt="<?php echo $supplier['name']; ?>"/>
</a>
</div>
【问题讨论】:
标签: javascript ajax internet-explorer-11