我试图在锚点上的键盘上按空格键时调用click事件。
$("a").on("keypress", function (e) {
if (e.which === 32) {
$(this).click();
e.preventDefault();
}
}
然而,这不起作用。我终于想出了一个修复,但我不明白为什么它的工作原理。简单的解决方法是将$(this).click()
更改为$(this)[0].click()
[0]
正在做什么以及如何使点击事件在锚上工作?
注意:我也试过$(this).trigger("click")
也没有运气。
答案 0 :(得分:2)
请参阅以下链接中的Roman Starkov的答案: Jquery how to trigger click event on href element
原生DOM方法做得对:
$('.cssbuttongo')[0].click(); ^ Important!
无论href是URL,还是片段(例如, #blah)甚至是javascript:。
请注意,这会调用DOM click方法而不是jQuery click 方法(非常不完整,完全忽略href)。
所以基本上当你使用索引器时,你将访问DOM的本机点击方法,而不是不适用于链接的jQuery实现。
我想将此主题标记为重复,但首先我链接了一个错误的主题,因此我收回了标记,现在我无法重新标记它。因此,如果有人有权力将其标记为链接主题的副本。如果这个答案有助于支持Roman Starkov在链接中的原始答案,那么他应该得到它。
答案 1 :(得分:0)
我没有确切地了解情况,但这对我有用,请试试这个:
py -3.5 -m pip
随意重新安排......希望它有所帮助!