3

次のようなリンクがあります。

<a href="page.html" class="myLink">
  Link text
  <div class="toggle">x</div>
</a>

彼らxがイントグルをクリックしたときにリンクがナビゲートされないようにしたいのですが、クリックした場合Link Textはリンクをナビゲートしたい.

私はこれを試しました:

$('.toggle').click(function(event) { $(this).parents('a').preventDefault(); });

しかし、うまくいかなかったようです。

4

2 に答える 2

6

クリックされた要素から outer への伝播を停止するには、stopPropagationaを呼び出す必要があります。ただし、ここでは単純に false を返すことができます (これにより、伝播が停止し、デフォルトの動作が妨げられます)。

$('.toggle').click(function(event) {
    // do interesting things   
    return false
});
于 2013-03-04T20:34:37.110 に答える
1

これは、preventDefault()メソッドを起動する必要がある要素ではなくイベントです。

$('.toggle').click(function (event) { 
    event.preventDefault(); 
});

これにより、イベントがトリガーされなくなりますが、ドキュメントは伝播されません。

$('.toggle').click(function (event) { 
    event.stopPropagation(); 
});

カウンターパートですか。

于 2013-03-04T21:05:02.430 に答える