我想检测整个文档正文中的鼠标移动,并能够确切地告诉我正在盘旋的DOM的哪个部分。 “哪个部分”是指鼠标当前所在的最内层DOM元素。
我可以将悬停绑定到整个文档正文,但是$(this)会给我$(正文),而不是最内层的元素。或者我可以递归地迭代整个DOM并将悬停绑定到每个元素,但这将是一个严重的过度杀手IMO。
有没有简单的方法来实现这一目标?
答案 0 :(得分:4)
jQuery's event.target应该这样做:
$("body").click(function(event) {
console.log($(event.target));
});
答案 1 :(得分:0)
根据Jasie的建议,我最终使用了以下代码:
var currentNode = null;
$('body').mousemove(function(event) {
if ($(event.target) !== currentNode) {
currentNode = $(event.target);
console.log(currentNode);
}
});
答案 2 :(得分:-1)
:)想到所有元素,比如:
<div>this is div</div>
<span>this is span</span>
<p>This is p</p>
<a>this a</a>
<ul><li>this is ul li</li></ul>
<ol><li>This is ol li</li></ol>
<img src="" />
<textarea id="text"></textarea>
textarea仅向您显示结果。
jQuery("div,span,p,a,ul,ol,img").hover(function(){
jQuery("#text").append(jQuery(this).html() +
"<br />");
},function(){
}
);