我有两个DIV:
<div id="div1"></div>
<div id="div2"></div>
在特殊情况下, div2 采用z-index:999。在这种情况下,我无法点击 div1 。定义的jquery函数:
$j = jQuery.noConflict();
$j(function() {
$j(document).click( function(e) {
var clicked = $j(e.target);
})
})
所以,scenarion如下:
$ j(文档).click函数调用如果在具有相同z-index的任何div上发生单击
$ j(文档).click函数调用如果在具有更高 z-index的div上发生单击并且未单击另一个
有没有办法处理整个屏幕上的所有点击?
答案 0 :(得分:1)
如果你想确保处理任何深度的任何div的每次点击,你可以在点击文档时验证鼠标是否结束,然后触发该div的click事件。怎么样:
$(document).click(function(e){
$('div').each(function(){
if (e.pageX >= $(this).position.left &&
e.pageX <= $(this).position.left+$(this).width() &&
e.pageY >= $(this).position.top &&
e.pageY <= $(this).position.top+$(this).height()
){
$(this).trigger('click');
}
});
});
这是一个矫枉过正的解决方案,但它可能有用..希望这有帮助。