-1

このコードが機能しない理由は何ですか? 私は 1 時間かけて、単純に嘲笑されるはずだったものを探してテストしました。return false と他の回答で提案されている他の解決策を試しましたが、ページは依然として return false を無視してトップにジャンプします。どうしたの?

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

編集:これは #about a の html です。スクリプトの要素の構文に何か問題があるのでしょうか?

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

EDIT 2:広範な検索、試行錯誤の後、これが機能しなかった理由を見つけることができませんでした。#about div から # アンカー リンクを削除し、div に関数を直接適用することにしました。これは、href がなくなったため、もちろん問題なく動作します。

4

1 に答える 1

2

試す:

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

e.preventDefault() を先頭に配置すると、イベントが確実に停止されます。fadeTo 関数で実行時エラーが発生する可能性があります。

于 2012-10-27T22:11:35.580 に答える