【问题标题】:Javascript: window.open popup on every clicksJavascript:window.open 每次点击都会弹出
【发布时间】:2016-05-09 11:29:09
【问题描述】:

当有人点击我的博客页面时,我正在使用以下脚本弹出一个 url。

<script type="text/javascript">
document.body.onclick= function(){
window.open('https://mywebpage.com', 'poppage', 'toolbars=0, scrollbars=1, location=0, statusbars=0, menubars=0, resizable=1, width=950, height=650, left = 300, top = 50');
}</script>

问题,如果你的用户点击了我博客中的任何地方,mywebpage url 就会弹出, 他点击了多少次就会弹出来, 我只需要一次它就会弹出网页,直到他的会话从浏览器结束

【问题讨论】:

  • cookie 怎么样?

标签: javascript popup blogs


【解决方案1】:

一种方法是让您的 onclick 仅在一个方向上切换布尔值,并在切换布尔值时打开窗口。每次点击都会激活 Onclick:http://www.w3schools.com/jsref/event_onclick.asp

另外,这应该标记为 javascript,而不是 java。

【讨论】:

    【解决方案2】:

    您可以从处理程序中删除事件侦听器,以防止更多点击调用处理程序:

    function openWindow(){
    window.open('https://mywebpage.com', 'poppage', 'toolbars=0, scrollbars=1, location=0, statusbars=0, menubars=0, resizable=1, width=950, height=650, left = 300, top = 50');
    document.body.removeEventListener('click', openWindow);
    }
    document.body.addEventListener('click', openWindow);
    

    所以当用户第一次点击时,弹出窗口将被打开,并且事件监听器将被移除,从而防止弹出窗口在进一步点击时触发。

    【讨论】:

    • 您好,感谢您的回复,我使用了您的脚本,如下所示,但仍然会弹出新的点击
    • @striker 你用的是什么浏览器?它对我来说很好:iliveinabin.com/popup-test.html
    猜你喜欢
    • 2013-06-26
    • 2015-09-03
    • 1970-01-01
    • 1970-01-01
    • 2021-01-28
    • 1970-01-01
    • 1970-01-01
    • 2020-11-11
    • 2015-10-24
    相关资源
    最近更新 更多