3

本体が読み込まれるとトリガーする機能を試しています。これは body タグから実行できることはわかっていますが、可能であれば JS から実行することをお勧めします。

例えば:document.getElementsByTagName('body').onload = someFunc();

これは私にはうまくいきませんが、本質的にやりたいことを示していると思います。

編集:

私は答えを試しましたが、スクリプトタグをボディ内に配置しても、ボディタグで使用する要素がロードされる前に関数を呼び出していることが問題のようです。これはそれがする必要があることです:

var buttonElements = document.getElementsByClassName('button');

もしそうなら:

alert(buttonElements)

ポップアップし0ますが、コンソールで変数を作成すると、要素が正常に入力されます。

4

4 に答える 4

5

得られたものはほとんど機能しますが、JavaScript を<body>タグの最後にインポートする必要があり、最初の結果にインデックスを付ける必要があります。

document.getElementsByTagName('body')[0].onload = someFunc;
于 2012-12-27T18:42:08.287 に答える
5

そのようです:

window.onload = someFunc;

ただし、関数が引数を受け入れる場合は、次のような無名関数が必要になります。

window.onload = function(){
    someFunc(arg1, arg2);
}

ところで、@Pointyがコードについて言及したことを修正する以外に、次のこともできます。

document.body.onload = someFunc;
于 2012-12-27T18:42:08.090 に答える
2

jQuery を使用する場合:

$(document).ready(function () {
    callMyFunction();
});
于 2012-12-27T18:45:43.583 に答える
2

引用符を使用しないでください..."someFunc"()とにかく実行しようとすると機能しません。

window.onload = someFunc;
于 2012-12-27T18:42:37.653 に答える