Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript模拟单击div_Javascript_Youtube_Keyboard Shortcuts - Fatal编程技术网

如何使用javascript模拟单击div

如何使用javascript模拟单击div,javascript,youtube,keyboard-shortcuts,Javascript,Youtube,Keyboard Shortcuts,我正在寻找一种方法,能够装备一个快捷方式到youtube控制按钮。我想能够点击左右箭头激活播放列表上的“上一个视频”和“下一个视频”。我过去很容易自己做,但他们做了一些改变,因为这些改变我不能完全复制我过去的工作 我使用谷歌浏览器插件来管理我的快捷键。我让右键只在“*”上执行javascript代码 问题在于要执行的脚本。我以前只做document.getElementById,但现在他们使用class而不是id,我无法让它工作。它们的按钮是div,如下所示: <div class="yt

我正在寻找一种方法,能够装备一个快捷方式到youtube控制按钮。我想能够点击左右箭头激活播放列表上的“上一个视频”和“下一个视频”。我过去很容易自己做,但他们做了一些改变,因为这些改变我不能完全复制我过去的工作

我使用谷歌浏览器插件来管理我的快捷键。我让右键只在“*”上执行javascript代码

问题在于要执行的脚本。我以前只做document.getElementById,但现在他们使用class而不是id,我无法让它工作。它们的按钮是div,如下所示:

<div class="ytp-button ytp-button-prev" role="button" aria-label="Previous" tabindex="6050" style="display: inline-block;">
</div>
<div class="ytp-button ytp-button-next" role="button" aria-label="Next" tabindex="6051" style="display: inline-block;">

返回数组,因为可以有多个具有相同类名的元素。您可以通过
document.getElementsByClassName(“ytp button ytp button prev”)[index]

选择它们。如果您使用jQuery,则可以将元素作为目标,然后触发如下单击事件:

$( ".ytp-button-prev" ).trigger( "click" );

Jason有您的答案,但另一种选择是使用document.querySelector。如果这些类只有一个按钮,或者您想要第一个按钮,那么:

var button = document.querySelector('.ytp-button.ytp-button-prev');

jQuery并不是我们所有项目的最佳解决方案,但对于模拟事件来说,它是一个不错的选择

(function($){
    $('.element').click();
    // same for others ex: $('.element').keyup();
})(jQuery);

示例:

如果未定义索引,我应该将其改为0吗?返回一个live,这与数组非常不同。;-)答案应该解释他们为什么要解决老年退休金问题。推送一个既没有标记也没有问题的特定库不是一种好的形式。如果你要这样做,你至少应该注意哪一个。少数人使用$variable名称。
(function($){
    $('.element').click();
    // same for others ex: $('.element').keyup();
})(jQuery);