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.
谢谢
您还没有在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.