我将整个TD设置为可点击以最小化和最大化它。但是,我想这样做,以便如果单击TD的某个部分,则不会最小/最大,而是执行其他一些代码。在阅读了这个网站和Google的内容后,我发现我需要找到 Activity 的目标。我从关于stackoverflow的另一个问题中获取了该代码,该代码在Chrome中完美运行,但JS在Firefox中崩溃。

这是崩溃的地方:

$(function()
{
    $('.clickable').live('click', function()
    {
        alert('click');
        //Figuring out where a user clicked
        var targ;
        var e;
        if (!e)
            e = window.event;
        if (e.target)
            targ = e.target;
        else if (e.srcElement)
            targ = e.srcElement;
        if (targ.nodeType == 3) // defeat Safari bug
            targ = targ.parentNode;

        alert('after');
        });
return false;
});

在这两种情况下,都将显示警报“单击”,但仅在Chrome中显示“之后”。有什么帮助吗?

最佳答案

去掉

var e;
if (!e)
    e = window.event;

并将事件e添加为函数参数:
$('.clickable').live('click', function(e)

另请参阅此jsfiddle

关于jquery - jQuery-查找确切的点击目标(代码在Chrome中有效,但在Firefox中无效),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8099701/

10-11 04:31