1

なぜこれが機能しないのですか?
HTMLのもの

<div id="nav-bar">  
  <ul>  
    <li>  
      <span>  
        <a href="contact.html">Contact</a>  
      </span>  
    </li>  
  </ul>  
</div>

Javascriptのもの

$('div#nav-bar').filter('a').click(function(event){
    event.preventDefault();
});
4

2 に答える 2

8

フィルタは、すでに選択されているもののみをフィルタリングします。あなたの場合、#nav-bar要素。

あなたはこれを必要とします:

$('div#nav-bar a').click(function(event){
        event.preventDefault();
    });
于 2012-08-28T15:06:35.493 に答える
2

filterここで使用するのは間違った方法です。find選択範囲内の要素を探すために使用する必要があります。

$('div#nav-bar').find('a')...

または、単にそれを1つのセレクターに結合します。

$('div#nav-bar a')...

それを修正すると、preventDefault実際に適用されて機能します。そのコードに直接問題はありません。

于 2012-08-28T15:09:07.927 に答える