function未定義:JavaScript関数を同じファイル内で定義する必要がありますか?
-
30-10-2019 - |
質問
ファイルがあります notifications.js
要素にバインドされた1つのイベントと関数を含む updateNotification()
. 。この関数はjQueryを使用して、JSONオブジェクトがパラメーターとして渡されたときにページ上の特定の要素を更新します。
問題:
私はページ内でこの関数を呼び出そうとしています(経由 <script>
ただし、呼び出すのではなく、タグ)がページを破ります。 Chrome Developer Console(名前がわからない)内でいくつかの掘削を行いましたが、エラーがフラグが付けられています。
/pleaseshare/views/install/:50 Uncaught ReferenceError:updateNotification is not defined
しかし、コンソール内でパンすると、ファイルがはっきりと表示されます notifications.js
スクリプトの下にリストされており、関数はそこで定義されています。現在のスコープ内で関数を定義する場合(たとえば、呼び出しの上の行)、正常に動作します。
私が試したこと
この関数にはjQueryを必要とするいくつかのJavaScriptが含まれているので、私はそれをエンコシングすることなく両方で試みました $(document).ready( function() {});
, 、どちらも影響を与えていないようです。
私はかなり困惑しています。
適切な尺度のために、JavaScriptとHTMLの構造を表示するためのリンクを次に示します。 http://snippi.com/s/znk6xe9
なぜこれが起こっているのかを理解するのに役立つ、またはJavaScript機能をクロスファイルと呼ぶことができない理由の説明(これはそうではないことを願っていますが)は大いに感謝されるでしょう;)!!
正しい解決策はありません
所属していません StackOverflow