ここでは簡単な例:onclickイベントでスコープ内の関数にアクセスする方法は?
$(function(){ ///scope
function alerter(number){
switch(number){
case 1:
alert("first");
break;
case 2:
alert("second");
break;
}
}
});
#first{
width: 300px;
height: 300px;
background: red;
}
#second{
width: 300px;
height: 300px;
background: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div id="first" onclick="alerter(1)">
</div>
<div id="second" onclick="alerter(2)">
</div>
エラーメッセージは言う:
"をアラータが定義されていない" 私はJS .click()関数(またはイベントリスナー)を使用するカント私のプロジェクトでは、divの永久的な部分がないためです。
"alerter"関数がスコープ関数内にない場合はもちろん、グローバル変数を宣言する必要はありません。
ありがとうございました!
あなたはグローバルはどのように使用しようとしているしたくない場合。それはHTMLファイルに...? JSファイル内のリスナーをバインドするか、グローバルが必要です。 – Li357