是否可以通过PHP检查我的浏览器FF/Chrome/IE/Safari弹出窗口阻止程序是否允许/启用?浏览器弹出窗口阻止程序已关闭/打开
回答
弹出广告拦截,但也许你可以做这样的事情:
触发测试弹出窗口并立即用javascript关闭它。在此过程中检测弹出是否成功或阻止。
一旦完成,向服务器发起AJAX请求并保存是否被弹出窗口阻止程序阻止在会话变量中。
不过,我真的不明白为什么你的服务器端代码需要知道客户端是否有积极的弹出窗口拦截器,除非你正在收集数据作统计用途。
耶在JS中需要它。 – Suleman 2012-07-06 08:02:05
你可以尝试这样的事情:
<script language="javascript">
var myWindow;
myWindow= window.open(...);
if (myWindow.closed) {
//pop up disabled
}
</script>
但只能在客户端上检测到它不是在PHP ^^
这对你有好处吗? – 2012-07-06 09:15:18
因为PHP是一种服务器端语言,我很积极,它不可能只使用PHP。像其他答案一样,在这个任务中使用Javascript(也许是AJAX?)。
PHP可能知道关于浏览器的“一点点”,但只要是请求标头中的内容。这包括用户代理标题,告诉您用户正在使用哪个浏览器,并且您的策略显示您的信息可以取决于用户代理(很多网页在从手机浏览器)。
- 1. 关闭浏览器时打开自定义弹出窗口
- 2. Selenium关闭浏览器弹出窗口
- 3. 在弹出窗口中打开链接时,浏览器窗口关闭
- 4. 关闭弹出窗口关闭直到浏览器关闭
- 5. 打开新窗口弹出窗口与浏览器分开
- 6. 显示在浏览器窗口顶部的弹出窗口,如果弹出窗口阻止程序启用
- 7. 在浏览器窗口关闭前显示jQuery弹出窗口
- 8. 如何使用JSF打开弹出窗口而不会被浏览器阻止
- 9. 如果Internet Explorer自动关闭弹出窗口阻止程序
- 10. 如何打开弹出窗口并关闭弹出窗口?
- 11. 关于打开/弹出新窗口的浏览器警报
- 12. 在C#中打开浏览器窗口作为弹出窗口#
- 13. 从弹出窗口打开新的浏览器窗口
- 14. 如何检查是否在浏览器中使用代码打开或禁止弹出窗口阻止程序?
- 15. 如何关闭浏览器的父窗口也关闭子弹出窗口?
- 16. 浏览器(浏览器名称)阻止此网站(Facebook)打开弹出式窗口
- 17. 的FB.login()调用弹出窗口阻止谷歌浏览器
- 18. 检测如果浏览器阻止弹出窗口
- 19. 机器人框架关闭浏览器弹出窗口
- 20. 谷歌浏览器打包的应用程序弹出窗口?
- 21. 如何关闭已打开的弹出窗口
- 22. 打开窗口浏览器
- 23. 如何在同时关闭已打开的弹出窗口时打开弹出窗口
- 24. 如何关闭Chrome浏览器弹出窗口?
- 25. 如何在浏览器关闭时创建弹出窗口
- 26. Google Chrome浏览器扩展:弹出式窗口未关闭
- 27. 当浏览器关闭时显示弹出窗口
- 28. 如何查看浏览器弹出窗口将关闭
- 29. 检测阻止的弹出窗口而不打开弹出窗口
- 30. 如何抛出一个警告说“请关闭弹出窗口阻止程序”
我认为没有办法。 你可以尝试一些这样的JavaScript [测试弹出式窗口拦截器使用JavaScript](http://davidwalsh.name/popup-block-javascript) – 2012-07-06 07:53:15
你是什么意思的“允许”?你有一个PHP文件,你可以用一个弹出窗口拦截器的浏览器调用它,对吗?那么,谁决定什么时候允许什么以及理由如何?您需要先告诉我们,然后才能告诉您是否可以。或者我只是没有得到你的问题,请澄清。 – Nanne 2012-07-06 07:55:31
@BasicBridge:是最好的选择! – Suleman 2012-07-06 07:55:33