当鼠标光标悬停在不同的页面元素上时,是否有任何事件被触发?
理想情况下是这样的事件:
window.onmousecursorchange = function(e) {
// e would contain information about the cursor
// eg. e.type could contain 'text','pointer', etc..
}
注意:解决方案不应涉及jQuery或其他库
更新:
“可能重复”的问题用jQuery标记,所有答案(没有一个解决问题)基于jQuery。我正在寻找一个纯JavaScript解决方案。如果主持人认为这还不足以让这个问题保持开放,请随时关闭。
答案 0 :(得分:2)
是事件onmouseenter
$('*').mouseenter(function(){
var currentCursor = $(this).css('cursor') ;
console.log( currentCursor );
});
答案 1 :(得分:2)
你可以试试这个:
document.addEventListener('mouseover',function(e){
var cursor = e.target.style.cursor;
console.log(cursor);
},false);
它使用事件冒泡来提高性能并保存代码。
答案 2 :(得分:1)
$(function(){
$('*').hover(function(){
$(this).data('hover',1); //store in that element that the mouse is over it
},
function(){
$(this).data('hover',0); //store in that element that the mouse is no longer over it
});
window.isHovering = function (selector) {
return $(selector).data('hover')?true:false; //check element for hover property
}
});