【问题标题】:window.open not working properly on Firefox 55.0.1window.open 在 Firefox 55.0.1 上无法正常工作
【发布时间】:2017-08-18 19:01:45
【问题描述】:

我正在尝试使用 W3C 通知 API 将桌面通知添加到我的站点,该 API 记录在 MDN。对于初始测试和玩耍,我一直在使用这个 fiddle 我从 Stackoverflow 上的 this question 获得。一切正常,除了当通知出现并且我在使用 Firefox 时单击它时,登录 URL 在新选项卡中打开,并且 Firefox 立即切换到触发通知的页面。

在 Chrome 上没有看到这种奇怪的行为。它在那里工作得很好。是什么导致了这种行为?我是不是做错了什么?

这是那个小提琴的代码:

<button onclick="notifyMe()">Notify me!</button>


<script>
    // request permission on page load
    document.addEventListener('DOMContentLoaded', function () {
      if (Notification.permission !== "granted")
        Notification.requestPermission();
    });

    function notifyMe() {
      if (!Notification) {
        alert('Desktop notifications not available in your browser. Try Chromium.'); 
        return;
      }

      if (Notification.permission !== "granted")
        Notification.requestPermission();
      else {
        var notification = new Notification('Notification title', {
          icon: 'http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png',
          body: "Hey there! You've been notified!",
        });

        notification.onclick = function () {
          window.open("http://stackoverflow.com/a/13328397/1269037");      
        };

      }

    }
</script>

【问题讨论】:

    标签: javascript html firefox notifications


    【解决方案1】:

    替换:

    window.open("http://stackoverflow.com/a/13328397/1269037");
    

    与:

    var myWindow = window.open("http://stackoverflow.com/a/13328397/1269037");
    myWindow.focus();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-24
      • 2014-03-30
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 2014-02-05
      • 1970-01-01
      • 2016-09-15
      相关资源
      最近更新 更多