Ori*_*ael 20 jquery triggers mouseover hover
我正在使用jQuery在Web环境中开发.
我想知道为什么
$("#a#trigger").trigger('mouseenter');
$("#a#trigger").trigger('hover');
$("#a#trigger").trigger('mouseover');
Run Code Online (Sandbox Code Playgroud)
所有这三个都不能激活我拥有的悬停功能.
$(function() {
$('a#trigger').hover(function(e) {
$('div#pop-up').show();
}, function() {
$('div#pop-up').hide();
});
});
});
Run Code Online (Sandbox Code Playgroud)
a#trigger
是锚的名称,#pop-up
是我网站中的div元素.
问题是我想在FullCalendar插件中鼠标悬停某些事件,这些功能无法正常工作.谢谢.
und*_*ned 67
你是在正确的轨道上,问题是#
选择器中的额外问题,只需删除第一个哈希:
$("a#trigger").trigger('mouseenter');
Run Code Online (Sandbox Code Playgroud)
请注意,由于ID必须是唯一的,因此无需指定元素类型,$('#trigger')
效率更高.
另请注意:
在jQuery 1.8中不推荐使用,在1.9中删除:该名称
"hover"
用作字符串的简写"mouseenter mouseleave"
.它为这两个事件附加单个事件处理程序,并且处理程序必须检查event.type
以确定事件是否为mouseenter
或mouseleave
.不要将"hover"
伪事件名称与.hover()
接受一个或两个函数的方法混淆.
你的jQuery选择器应该写成例如
$('a#trigger');
Run Code Online (Sandbox Code Playgroud)
代替 $('#a#trigger');
在jQuery中,选择器中的#匹配id.在这种情况下trigger
是一个id,但它a
是一个HTML元素,不需要前缀.
你的最终代码是:
$("a#trigger").trigger('mouseenter');
$("a#trigger").trigger('hover');
$("a#trigger").trigger('mouseover');
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
86097 次 |
最近记录: |