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

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

如何(取消)關注 YouTube 的視頻元素

如何(取消)關注 YouTube 的視頻元素

www說 2023-03-03 16:04:47
這個問題來自于我試圖開發一個 瀏覽器擴展來增強 YouTube 的鍵盤導航。1. 背景通常,當網頁將焦點放在 YouTube 的video播放器元素上或焦點何時放在頁面主體上時,我一點也不清楚。如果焦點在video元素上,則方向鍵將控制視頻;否則,如果焦點在頁面主體本身,箭頭鍵將控制滾動。我想添加一個快捷方式來(取消)激活video元素上的焦點。我怎么做?2.我試過的簡單地使用document.querySelector('video').focus()或document.activeElement.blur()對我不起作用。也不是document.activeElement.setAttribute('disabled', 'true')...3. 其他信息理想情況下,因為在視覺上,用戶通常不清楚焦點在哪里,我想稍后添加一些 CSS 邊框裝飾,但我認為一旦解決了之前的挑戰,這就會很簡單。坦率地說,為什么 YouTube 還沒有這一切呢?他們這邊好像很懶。。。
查看完整描述

1 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

1. 一種可能的解決方案

嘗試改變對元素的關注div #movie_player:


document.addEventListener('keydown', (evt) => {

  if (evt.key === 'v') {

    const player = document.querySelector('#movie_player');


    document.activeElement.id === 'movie_player'

      ? player.blur()

      : player.focus();


    console.log('Active Element:', document.activeElement);

  }

});

2. 獎勵:上述解決方案的 Dart 版本

或者,既然你一直在使用 Dart:


document.onKeyDown.listen((KeyboardEvent keyboardEvent) {

  switch (keyboardEvent.key) {

    case 'v':

      final Element player = document.querySelector('#movie_player');


      document.activeElement.id == 'movie_player' 

          ? player.blur() 

          : player.focus();


      print('Active Element: ${document.activeElement}');


      break;

  }

});


查看完整回答
反對 回復 2023-03-03
  • 1 回答
  • 0 關注
  • 150 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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