1

問題は、伝播の停止を使用してCtrlキーでリンクをクリックしているときに、Firefox(3-10)がデフォルトのリンクハンドラーを呼び出さないのはなぜですか?IE!を含む他のすべてのブラウザは、それを行います。

コードサンプル:

<a href="http://google.com">Click me</a>
<script type="text/javascript">
$('a').click(function(evt){
    evt.stopPropagation();
});
</script>

Firefoxを開き、Ctrlキーを押しながらリンクをクリックするだけです。何も起こらない、なぜ?

4

2 に答える 2

1

「Ctrl+クリック」動作はFirefoxがウィンドウにアタッチするイベントハンドラーに実装されているため(実際のセットアップは少し複雑ですが、Webページの観点からはそのように見えます)、そのハンドラーへのイベントの伝播を防ぐため、イベントが発生することはありません。

于 2012-02-27T04:20:02.010 に答える
1

これは bugzilla に報告されたバグです:

https://bugzilla.mozilla.org/show_bug.cgi?id=748740

あなたはそれに投票することができます:)

于 2012-06-22T20:48:56.187 に答える