私の質問はこのhtmlコードです(私はChrome 56で作業しています)。このJavascriptイベントハンドラの引数はどこに定義されていますか?
<html>
<body>
<input type='range' min='0' max='5' step='0.1' oninput="console.log(value)">
</body>
</html>
予想通り、このコードが動作 - コンソールに出力される値の束をスライダコントロールリードを移動させます。
明らかに、value
変数は、console.log(value)
が実行される範囲で定義されます。私の主な質問は、value
変数はどこから来たのですか?また、「まさにそこにある」というような他の変数がありますか?そのような変数のドキュメントはありますか?そこにいることに頼るのは良い方法ですか?
これは入力フィールドの「value」属性を参照しています。「this」はhtmlタグ自体を参照してその値をすべて渡すため、「event」を含む任意のhtml属性を渡すこともできます - –
? JSが持っていたとは思わなかった "暗黙の" this "のように見えます。この動作はJavascriptの一部ですか、それともブラウザによって余分に行われるものですか? – gnarledRoot
http://jibbering.com/faq/names/event_handler.html – Bergi