1

私は javascript Placeholders.jsを使用し ています。ページが読み込まれると、次のようにスクリプトを実行する必要があると表示されます。

Placeholders.init({ live: true, //将来および変更された要素にも適用されます hideOnFocus: true //要素がフォーカスを受け取るとプレースホルダーを非表示にします });

私はjQueryを使用していません。init を実行するタイミングは、Placeholders.js スクリプトが読み込まれ、フォーム フィールドが読み込まれるという 2 つの条件に依存するため、どうすればわかりますか。

4

2 に答える 2

1

Initは、Placeholders.jsスクリプトが読み込まれたことと、フォームフィールドが読み込まれたことの2つに依存するため、いつ実行するかをどのように知ることができますか。

ドキュメントの下部、終了タグの直前に、呼び出しをscript行うタグを配置します。その上のすべての要素は、その時点でアクセス可能です。Placeholders.init</body>

例:

<body>
  <input id="theField" value="value from HTML" type="text">
  <script>
    document.getElementById("theField").value =
      "value from JavaScript";
  </script>
</body>

ライブコピー| ソース

その結果、フィールドにテキストが含まれます"value from JavaScript"。確かに、クロスブラウザ。

参照:

于 2013-01-10T08:06:38.827 に答える
-1

次のように確認できます。

if (document.readyState === 'complete') {
    // insert your code here
}

上記の 'if' ステートメントで囲まれたステートメントは、ドキュメントが完全に読み込まれるまで実行されません。jQuery では、次のようにできます。

$(document).ready(function() { // insert code here });
于 2013-01-10T08:14:06.953 に答える