更新时间:2016年8月9日 16:59:53 提交:mrr
使用js在新窗口中打开页面时,经常会遇到被浏览器拦截的情况。 怎么解决呢?下面小编分析了两种情况并分别附上解决办法。 对js弹出新窗口的拦截感兴趣的同学可以一起学习。
在Web编程中,使用JS在新窗口中打开页面时,会被浏览器拦截。 那么javascript弹出页面,怎样才能让JS打开一个新窗口而不被浏览器阻止呢?
1.问题1
通常情况下,如果在js中直接调用window.open()函数打开一个新窗口,浏览器会拦截该弹出窗口,因为浏览器会认为该窗口是用户不希望获取的窗口,比如弹出广告。
1. 解决方案
更改用户主动点击时触发的window.open()函数,并在超链接中添加onclick风暴,让浏览器认为用户想要访问这个页面,而不是直接弹出给用户
2. 例如:
这样,当用户点击这个超链接时,浏览器就会认为是打开了一个新链接,因此不会阻止它。
2.问题2
使用ajax处理数据。 当你点击获取数据javascript弹出页面,然后跳转到新的页面时,就会被浏览器拦截。
1. 解决方案
先用window.open打开一个窗口,然后更改窗口的地址
2. 例如
var tempwindow=window.open(); tempwindow.location='/jump/new';
以上就是小编给大家介绍的拦截新增JS弹窗的解决方案。 希望对您有所帮助。 如果您有任何疑问,请给我留言,编辑会及时回复您。 也非常感谢您对Script House网站的支持!