Jquery没有在ff工作

Maa*_*tje 0 browser firefox jquery cross-browser toggleclass

我知道关于这个主题已经有很多主题,但我还没有找到任何有用的内容.我有一个jquery代码来显示和隐藏div.

在Chrome中这很好用,在FireFox中则没有

我用chrome检查了我的控制台,说'event.returnValue已被弃用.请改用标准的event.preventDefault().

但是我没有event.returnValue.此建议也无效(event.preventDefault)

这是我的js:

<script>
$(document).ready(function(){
    $(".aanmelden_event").click(function(){
        event.preventDefault();
        $(".event_subscribe").toggleClass("uitgeklapt");
    });
});
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的css:

.event_subscribe{
    height: 0px;
    overflow:hidden;
    transition: all 2s;
    -webkit-transition: all 2s; /* Safari */
}
Run Code Online (Sandbox Code Playgroud)

额外的课程:

.event_subscribe.uitgeklapt{
    height: 800px;

}
Run Code Online (Sandbox Code Playgroud)

我认为这是我的jquery,event.preventDefault.我还试过e.preventdefault和其他主题的其他一些建议的解决方案.不幸的是,没有工作.

有人知道我在做错了吗?我用jquery-1.10.2.min.js btw.

谢谢

T.J*_*der 6

您还没有在event函数中接受参数:

<script>
$(document).ready(function(){
    $(".aanmelden_event").click(function(event){
    // Here -----------------------------^
        event.preventDefault();
        $(".event_subscribe").toggleClass("uitgeklapt");
    });
});
</script>
Run Code Online (Sandbox Code Playgroud)

因此,event未定义并且代码在切换类之前抛出.您应该在控制台列出a时出错,ReferenceError因为您试图读取未声明变量的值.

它在其他一些浏览器中工作的原因是有一个全局event对象(最初在IE中,然后由Chrome提供,其他一些与IE编写的脚本兼容).Firefox没有这样做,没有全球性的event.