簡體   English   中英

在Chrome中的滾輪事件后,mailto鏈接無法正常工作

[英]mailto link not working after wheel event in Chrome

我已經構建了一個html頁面來演示這個問題。
請在Google Chrome中加載此文檔:

<html>
<head>
<script language="javascript">
var allow = true;
window.addEventListener("keydown", EvKeydown);
window.addEventListener("wheel", EvWheel);

function EvKeydown(ev) {
   window.document.body.innerHTML += "key ";
   window.location.href = "mailto:user@domain.com";
}
function EvWheel(ev) {
   if (allow) {
      allow = false;
      window.document.body.innerHTML += "wheel ";
      window.setTimeout(function() {allow = true}, 500);
      window.location.href = "mailto:user@domain.com";
   }
}
</script>
</head>
<body>
</body>
</html>

每按一次鍵,我的郵件程序(MS Outlook)就會運行。
轉動輪子僅在文檔加載后第一次運行,如果之前沒有按下任何鍵。
單擊任何鼠標按鈕“重置”該按鈕並且輪子再次運行它,但只有一次。
我也在MS IE和Edge中對此進行了測試。 它完美地運作。
任何人都可以對此有所了解嗎?

刪除allow變量和if語句,它將每次運行

<script language="javascript">

window.addEventListener("keydown", EvKeydown);
window.addEventListener("wheel", EvWheel);

function EvKeydown(ev) {
   window.document.body.innerHTML += "key ";
   window.location.href = "mailto:user@domain.com";
}

function EvWheel(ev) {
  window.document.body.innerHTML += "wheel ";
  window.setTimeout(function() {allow = true}, 500);
  window.location.href = "mailto:user@domain.com";

}
</script>

我花了很多時間在這上面,到目前為止,這是我能想到的唯一選擇。

根據代碼的用途,添加以下行將完成您要完成的任務。

setTimeout(function(){document.location.href = window.location.href },500);

完整的HTML:

    <html>
       <head>
          <script type = "text/javascript">
             window.addEventListener("keydown", EvKeydown);
             window.addEventListener("wheel", EvWheel);

             function EvWheel(ev) {
                window.document.body.innerHTML += "wheel ";
                setTimeout(function(){document.location.href = window.location.href },500);
                window.location.href = "mailto:user@domain.com";
             }

             function EvKeydown(ev) {
                window.document.body.innerHTML += "key ";
                window.location.href = "mailto:user@domain.com";
             }
         </script>
      </head>
      <body>
      </body>
   </html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM