我创建了一个简单的 JavaScript 函数来在加载后显示我的弹出窗口。但它一直被 Firefox 和 Google Chrome 阻止,我必须以某种方式在 Firefox 和 Chrome 上启用它才能显示弹出窗口。
有其他选择吗?
我在弹出窗口上有一个播放器,所以我必须使用弹出窗口让播放器自动播放。问题是,如果我把它放在页面本身上,一旦用户单击另一个页面,整个页面就会重新加载,播放器会自动停止几秒钟,直到整个页面重新加载,我必须防止这种情况发生。
一般规则是,弹出窗口拦截器将在以下情况下启动:window.open
或类似的内容是从 javascript 调用的,而不是由直接用户操作调用的。也就是说,你可以调用window.open
响应按钮单击而不会被弹出窗口阻止程序击中,但如果您将相同的代码放入计时器事件中,它将被阻止。调用链的深度也是一个因素 - 一些较旧的浏览器只查看直接调用者,较新的浏览器可以稍微回溯以查看调用者的调用者是否是鼠标单击等。保持尽可能浅以避免弹出窗口阻止程序。
请看这里 dthorpe 的回答。它涵盖了你的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)