1. 程式人生 > >JS模組29 DOM事件模擬

JS模組29 DOM事件模擬

模擬按鈕的單擊事件

const btn = document.querySelector('.logo');
const event = new MouseEvent('click', {
  bubbles:true,
  cancelable:true,
  view:window
});

btn.dispatchEvent(event)

具體的引數參考這裡

同樣的,模擬鍵盤事件應該使用KeyboardEvent建構函式

event = new KeyboardEvent(typeArg, KeyboardEventInit);

模擬鍵盤事件的例子

const event = new KeyboardEvent('keydown', {
  altKey: true,
  bubbles: true,
  cancelable: true,
  code: 'KeyK',
  composed: true,
  ctrlKey: true,
  key: 'k',
  metaKey: true,
  repeat: true,
  shiftKey: true,
  view: window
})

document.addEventListener('keydown', (e) =>{
    console.log(e.key)
})

document.dispatchEvent(event);
// k

參考