Jquery 单击事件不起作用时返回false

Jquery 单击事件不起作用时返回false,jquery,click,return,anchor,preventdefault,Jquery,Click,Return,Anchor,Preventdefault,你知道为什么这个代码不起作用吗?我花了一个小时来搜索和测试一些本来应该很简单的东西!我尝试了return-false和其他答案中建议的其他解决方案,但页面仍然跳转到顶部,忽略return-false。怎么了 $('#about a').click(function(e) { $('.overlay').fadeTo(300, 0.95); $('#about-text').fadeTo(300, 1); e.preventDefault(); }); 编辑:这是关

你知道为什么这个代码不起作用吗?我花了一个小时来搜索和测试一些本来应该很简单的东西!我尝试了return-false和其他答案中建议的其他解决方案,但页面仍然跳转到顶部,忽略return-false。怎么了

$('#about a').click(function(e) {
    $('.overlay').fadeTo(300, 0.95);
    $('#about-text').fadeTo(300, 1);
    e.preventDefault();   
});
编辑:这是关于a的html。脚本中元素的语法可能有问题

<div class="projects" id="about"><a href="#">About</a></div>

编辑2:经过广泛的搜索、反复尝试,我找不到这一点的原因;不行。我决定删除#about div中的#锚定链接,并直接在div上应用he函数,这当然可以正常工作,因为它不再有href了

试试看:

$('#about a').click(function(e) {
    e.preventDefault();  
    $('.overlay').fadeTo(300, 0.95);
    $('#about-text').fadeTo(300, 1);
     return false;
});

将e.preventDefault()置于顶部将确保事件停止。fadeTo函数可能存在运行时错误

或者为它制作一个JSFIDLE,或者省去麻烦,用firebug调试它。你使用的是什么浏览器?一切似乎都按预期运行:尝试将
e.preventDefault()
放在函数的顶部作为第一项。查看HTML结构并根据脚本确保一切正常,在这种情况下,放置
e.preventDefault()
不是问题,以战利品为例,我们多次要求您设置JSFIDLE或演示页面。您看到的结果是由其他原因造成的。如果上面的fadeTo中也存在运行时错误,则实际上永远不会返回false。尝试了此操作,但无效。这一页仍在顶部。我甚至用css事件替换了fadeTo操作。但还是没有变化。