2012-10-06 16 views
6

可能性の重複:
event.preventDefault() vs. return falsejQueryのevent.preventDefault用のJavascriptのネイティブ同等

に私はわからないんだけど、私の知る限り見るように、event.preventDefaultjQueryから来ています。はいの場合は、Javascriptで同じことをするネイティブの同等のものがあるのでしょうか?

+2

preventDefaultはDOMメソッドです。 W3C仕様[here](http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-flow-cancelation)を参照してください。 – PHeiberg

+1

私はこの質問はそれと同じだとは思わない。 – Barmar

+0

@Barmarトピックは同じで、答えは両方のコンテキストに適しているので、どちらの価値を持っているのでしょうか? –

答えて

10

preventDefaultは、DOMメソッドです。 W3C仕様hereを参照してください。

+0

助けてくれてありがとう! :) – Mahdi

1

jQueryはネイティブJavaScriptイベントオブジェクトをラップします。 preventDefaultはJavaScriptメソッドです。 return false;によってpreventDefaultをjQueryで達成することができます。 jQueryのイベントハンドラ内から

+0

ええ、私はそうだと思います。 'jQuery'がなくても、Javascriptのネイティブなものはどうでしょうか? – Mahdi

+0

@Mahdi preventDefaultはjQueryではなくJavaScriptに関連しています。 – Anoop

+2

jQueryイベントハンドラからfalseを返す場合は、preventDefault **と** stopPropagationの両方を呼び出すのと同じです。それはpreventDEfaultを呼び出すのと同じではありません_only_ –

0

return falsee.stopPropagation()が湧き上がってからのイベントを防止しreturn falseなり、occuringからデフォルトのイベントを防ぐことができます効果的に渡さjQuery.Event object.

e.preventDefault()e.preventDefaulte.stopPropagationの両方を呼び出すのと同じです両方を行います。この動作は(非jQuery)イベントハンドラとは異なります。特に、return falsedoes not stop the event from bubbling upです。

出典:https://stackoverflow.com/a/1357151

関連する問題