stopPropagation在Mozilla Firefox中不起作用

时间:2012-05-29 09:52:43

标签: jquery stoppropagation

美好的一天,大家。有人可以解释为什么以下代码可以在谷歌浏览器中运行而在Mozilla Firefox中不起作用?目的是在第一次单击元素时显示带有链接(即元素的子元素)的面板,将其隐藏在第二个元素上,链接应该起作用。在Mozilla中,当您单击链接时(作为元素子元素的子元素),链接容器只是隐藏并且stopPropagation不起作用。

    reasonToggle = $("#element").toggle(function() {
        $("#links-container").css("visibility", "visible");
        $("#links-container").fadeTo(500, 1);
    }, function() {
        $("#links-container").fadeTo(500, 0, function() {
            $("#links-container").css("visibility", "hidden");
        });
    });
    $("#element a").click(function() {
        event.stopPropagation(reasonToggle);
    ;});

Html结构:

<div id="element"> 
    <div id="links-container">
        <a href=""> Link1 </a>
        <a href=""> Link2 </a>
        <a href=""> Link3 </a>
    </div
</div>

我认为找到解决方法并不是一个问题,但了解代码的错误真的很有趣。 谢谢。

1 个答案:

答案 0 :(得分:4)

您在点击处理程序的匿名函数中缺少event

$("#element a").click(function() {
//                            ^^