-1

javascript コードと関数を含む footer.php ファイルがあります。すべてのページでこの footer.php ファイルを使用しています。私が使用するボタンをクリックするとき

onclick="MyFunc()"

しかし、一部のページでは、ページがロードされたときに、onclick なしで MyFunc を呼び出す必要があります。タグはすべてのページが使用しているheader.phpファイルにあるため、「body onload」機能を使用できません。私は入れようとしました

<script Language="JavaScript">
window.onload=MyFunc; 
</script>

私のphpファイルと

<script Language="JavaScript">
function MyFunc(){
alert('hello');
}
</script>

footer.php にありますが、運がありません。

4

4 に答える 4

1

「しかし、一部のページでは、onclick なしで MyFunc を呼び出す必要があります」

あなたの質問から私が理解していることは次のとおりです。

  • MyFuncいくつかのページで起動したい
  • すべてのページが含まれていますfooter.php(最後に、私は推測します)。
  • MyFuncすでに存在する

そうであれば、起動させたいページでのみ、何らかの方法でこのイベントをトリガーする必要があります。これには 2 つの方法があります。

自動起動ページに小さなスニペットを追加する

window.addEventListener('load', MyFunc, false);

このコードはMyFunc、ページが読み込まれたときに起動される関数を配列に追加します。覚えておいてください:そして、これはすべての画像がロードされたwindow.onloadに発火します。

MyFunc自動トリガー

これらのページの違いはわかりませんが、上で示したスニペットのように、ページが読み込まれたときに関数を起動することでこれを行うことができます。これが行われる直前に、トリガーをチェックします。たとえば、発火するページに特定のクラスの要素があるtest場合は、それが存在するかどうかを確認してから ( document.getElementsByClassName('test').length > 0)、発火しMyFuncます。

これが役立つことを願っています。

于 2013-08-19T13:12:06.770 に答える
0

述べたように、使用するwindow.onloadか、イベントをDOMロードに添付できます

<body onload="MyFunc()"></body>
于 2013-08-19T12:49:01.450 に答える
0

フッター(ページの最後)にある場合は、必要な場所にこのコードを入力するだけです

<script>
    MyFunc()
</script>

これは関数を呼び出します

于 2013-08-19T12:56:47.623 に答える
0

言語属性が廃止されていることを知っているので、<script type="text/javascript">代わりに使用してみてください<script Language="JavaScript">

編集:ここにサンプルを置きますjsFiddle

于 2013-08-19T12:55:45.910 に答える