我有这段代码在点击时会显示几个div,然后在点击另一个链接后隐藏它们。我试图让它在Firefox中显示,它可能不是js中的问题,但非常感谢所有帮助。
<script type="text/javascript">
$(document).ready(function(){
$('.fadein').click(function(){
// Make the id overview show
$('#header-contact').hide('slow');
$('#header-portfolio').show('slow');
$('#content-portfolio').show('slow');
// override default a behavior
return false;
});
});
</script>
<script type="text/javascript">
$(document).ready(function(){
$('.fadein2').click(function(){
// Make the id overview show
$('#header-portfolio').hide('slow');
$('#header-contact').show('slow');
$('#content-portfolio').hide('slow');
// override default a behavior
return false;
});
});
</script>
<script type="text/javascript">
$(document).ready(function(){
$('.fadein3').click(function(){
// Make the id overview show
$('#header-portfolio').hide('slow');
$('#header-contact').hide('slow');
$('#content-portfolio').hide('slow');
// override default a behavior
return false;
});
});
答案 0 :(得分:4)
尝试将event
传递给每个click
处理程序,然后在return false
之前,在传入的preventDefault()
对象上调用event
。
示例:
$(document).ready(function(){
$('.fadeinX').click(function(e){
// Make the id overview show
$('#header-portfolio').hide('slow');
$('#header-contact').hide('slow');
$('#content-portfolio').hide('slow');
// override default a behavior
e.preventDefault();
return false;
});
});
答案 1 :(得分:2)
使用Web Developer by Chris Pederic清除缓存。我与Firefox有完全相同的问题,并使用Web开发人员清除缓存解决了它。很简单,但你永远不知道,我一直在拔头发。
答案 2 :(得分:1)
如果return false
preventDefault();
$(document).ready(function(){
$('.fadein').click(function(e){
// Make the id overview show
$('#header-portfolio').hide('slow');
$('#header-contact').hide('slow');
$('#content-portfolio').hide('slow');
// override default a behavior
e.preventDefault();
});
});
同样将你的JS移动到它自己的文件中,只有一个$(document).ready(function() {...})
函数,你可以将所有三个事件放在那里。