【问题标题】:This code works on chrome but not on firefox and IE or Safari, how can I fix it?此代码适用于 chrome,但不适用于 firefox 和 IE 或 Safari,我该如何解决?
【发布时间】:2014-10-31 14:54:52
【问题描述】:

我有这段代码...它在 Google chrome 上运行良好,但 firefox 和 EI 以及 Safari 会一遍又一遍地弹出警报。我应该添加什么以确保警报只发出一次。

<html>
    <script language="JavaScript">
        <!--

        document.onclick = myClickHandler;


        function myClickHandler() {
            alert("All orders require minimum two weeks notice before your event");
        }
        -->

        $(function() {
            $(document).on('click.once', function() {
                alert("Thank you for your visit. Happy shopping!!");
                $(document).off('click.once');
            })
        });
    </script>

</html>

【问题讨论】:

  • 使用 one() 怎么样?
  • 创建一个全局变量(函数外)并设置为=0,点击后设置为1,然后测试变量是否>0,不报警。我认为只有 Chrome 才能理解“click.once”事件。
  • 所有浏览器都支持@RocKhalil 命名空间事件
  • $(function () { $(document).one('click', function () { alert("感谢您的光临。购物愉快!!"); })});试试这个
  • “一遍又一遍地弹出警报。” 哪一个?那里有两个。该代码似乎在 Firefox 中运行良好:jsfiddle.net/x6gmk93p

标签: javascript jquery google-chrome internet-explorer firefox


【解决方案1】:
 $(function() {
        $(document).on('click', function() {
            alert("Thank you for your visit. Happy shopping!!");
            $(document).unbind('click');
        })
  });

【讨论】:

  • 谢谢。我实际上尝试了这个选项,但由于某种原因,每次点击 Firefox 时都会弹出警报......而且......在 chrome 中仍然可以正常工作。我不确定可能出了什么问题...
  • 也许你应该使用 /* */ install of 。第一个会一遍又一遍地弹出警报,第二个在我的 safari firefox 和 chrome 上运行良好
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-10
  • 2020-09-11
  • 1970-01-01
  • 2021-01-07
  • 1970-01-01
  • 2011-10-09
  • 1970-01-01
相关资源
最近更新 更多