亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

keydown 上的滾動事件,如向下箭頭和向上箭頭

keydown 上的滾動事件,如向下箭頭和向上箭頭

慕的地6264312 2022-10-21 09:42:40
我想做與網站上的向上箭頭和向下箭頭鍵相同的滾動事件。下面的代碼創建了一個與箭頭“相似”的事件,但它在按下鍵w和時保持鎖定s。document.addEventListener('keydown', e => {  if (e.keyCode == 87) {    window.scrollBy({      top: -30,      behavior: 'smooth'    });  } else if (e.keyCode == 83) {    window.scrollBy({      top: 30,      behavior: 'smooth'    });  }});提前致謝。
查看完整描述

2 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

我假設問題在于它在繼續之前“鎖定”了一會兒……以下糾正了該問題。


您需要在 keydown 上設置一個標志并在 keyup 上取消設置


然后,您需要讓其他東西執行該操作。


 var scrollAmount;



document.addEventListener('keydown', e => {

    if (e.keyCode == 87) {

        scrollAmount = -30

    } 

    else if (e.keyCode == 83) {

        scrollAmount = 30

    }

});


document.addEventListener('keyup', e => {

 scrollAmount = 0;

});


setInterval (function() {

     window.scrollBy({ top: scrollAmount});

},10)


查看完整回答
反對 回復 2022-10-21
?
手掌心

TA貢獻1942條經驗 獲得超3個贊

document.addEventListener('keypress', e => {

    if (e.keyCode == 119) {

       

        window.scrollBy({ top: -30, behavior: 'smooth' });

    } 

    else if (e.keyCode == 115) {

        window.scrollBy({ top: 30, behavior: 'smooth' });

    }

});


查看完整回答
反對 回復 2022-10-21
  • 2 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號