我似乎无法使preventDefault()与以下代码一起工作......浏览器仍然希望在点击后跳转到页面的顶部。有想法该怎么解决这个吗?为什么不能阻止默认为jQuery工作?
$('#controls a').click(function(event){
event.preventDefault();
var r = $(this).attr('rel');
var c = $('#container').attr('class');
// Prevent redundant actions
if (r != c) {
// Toggle 'active' class to show selection
$('#controls a').removeClass('active');
$(this).addClass('active');
// Fade out function then callback to change the view mode
$('#container').fadeOut(100, function(){
$('#container').removeAttr('class');
$('#container').addClass(r);
// Fade the container back in
$('#container').fadeIn(100);
});
}
}); //end list view
您可以添加相关的HTML,并确定页面中没有任何JS错误吗? – JAL 2010-10-18 16:37:52
代码的其余部分是否工作? – user113716 2010-10-18 16:40:41
你点击后是否在你的URL中附加了'#'(或其他...)?如果没有,preventDefault正常工作... – Shog9 2010-10-18 16:42:34