[解決済み] なぜ私のJavaScriptはJSFiddleで動作しないのですか?
2022-09-20 02:56:55
質問
このような場合、何が問題なのかがわかりません。 JSFiddle .
HTMLです。
<input type="button" value="test" onclick="test()">
JavaScriptです。
function test(){alert("test");}
そして、ボタンをクリックすると - 何も起こりませんでした。コンソールは "test not defined" と言っています。
JSFiddleのドキュメントを読みましたが、そこではJSコードが
<head>
に追加され、HTMLコードは
<body>
(というように、このJSコードはhtmlよりも先に動作するはずです)。
どのように解決するのですか?
この関数はロードハンドラ内で定義されているため、異なるスコープにあります。 コメントで @ellisbben が指摘しているように、これを修正するには、関数を明示的に
window
オブジェクトで明示的に定義することで修正できます。 もっといいのは、オブジェクトにハンドラをさりげなく適用するように変更することです。
http://jsfiddle.net/pUeue/
$('input[type=button]').click( function() {
alert("test");
});
インラインではなく、この方法でハンドラを適用することで、HTMLがきれいに保たれることに注意してください。 私はjQueryを使用していますが、あなたが好きなら、フレームワークの有無や、別のフレームワークを使用して行うことができます。
関連
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] テキストボックスのEnterキーで、JavaScriptでボタンクリックをトリガーする
-
[解決済み】なぜHTMLは "chucknorris "を色と見なすのか?
-
[解決済み】JavaScriptの比較では、どちらの等号演算子(== vs ===)を使うべきですか?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
-
[解決済み] JavaScriptで:hoverのCSSプロパティを変更する
-
[解決済み] JSXとLoadshを使用して、ある要素をn回繰り返す方法
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ジェスト あるクラスの特定のメソッドをモックする方法
-
[解決済み] チェックボックスが選択されているかどうかを確認するjQuery
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] JavaScriptのtoString()関数をオーバーライドして、デバッグ用に意味のある出力を提供することは可能でしょうか?
-
[解決済み] jqueryはjavascriptのライブラリなのかフレームワークなのか?[クローズド]
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] CORS: 認証モードは 'include' です。
-
[解決済み] jQueryのバージョン1、バージョン2、バージョン3の違いは何ですか?[クローズド]
-
[解決済み] これは純関数ですか?
-
[解決済み] リダイレクトされずにHTMLフォームを送信する方法