标题说明了一切,但这不起作用, 无论身体如何,悬停功能都有效。
$("#content").on("click", "a.zoom", function(e) {
$("body").addClass("zoomed");
}
$("#content").on("hover", "body:not(.zoomed) a.animation", function(e) {
//stuff
}
我也尝试过另一种方式,但我不明白。
$("body:not(.zoomed) #content").on("hover", "a.animation", function(e) {
//stuff
}
答案 0 :(得分:0)
如何以不同方式声明侦听器:
$(document).on("hover", "#content body:not(.zoomed) a.animation", yourHoverFunction);
答案 1 :(得分:0)
on
利用事件冒泡工作。在您将根选择器指定为#content
且匹配选择器指定为body:not(.zoomed) a.animation
的情况下,根元素已经在事件冒泡中传递,因此它将触发事件。您可能必须以编程方式处理它才能实现此目的。试试这个
$("#content").on("hover", "a.animation", function(e) {
if($("body:not(.zoomed)").length > 1){
//Do stuff here
}
}
答案 2 :(得分:0)
确定。在发现我正在弄错函数之后,由于悬停事件,我仍然无法使其工作。
这没有结果(这个甚至不检查身体类别):
$("#content").on("hover", "a.backgroundSwitch", function(e) {
console.log("hello?");
}, function() {
console.log("bello!");
});
所以我使用了Richard Neil Ilagan解决鼠标悬停和解决方案的问题。出事件。
$("#content").on("mouseover", "body:not(.zoomed) a.backgroundSwitch", function() {
console.log("hello");
}).on("mouseout", "body:not(.zoomed) a.backgroundSwitch", function() {
console.log("bello");
});
感谢所有的帮助!