JQuery和z-index

时间:2012-07-10 09:21:27

标签: jquery z-index

我有两个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上发生单击并且未单击另一个

  • 则调用

有没有办法处理整个屏幕上的所有点击?

1 个答案:

答案 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');
         }
    });
});

这是一个矫枉过正的解决方案,但它可能有用..希望这有帮助。