0

jQuery ではなくプレーンな JavaScript のみを使用するという要件があります。ページが完全にロードされたときではなく、DOM がロードされるとすぐに (関数を使用して) いくつかの変数を初期化する必要があります。要するに、ページ全体がロードされるのを待つべきではありません。jQuery では、関数を使用して非常に簡単に実行できdocument.ready()ます。

任意の関数を使用して JavaScript で実装することは可能ですか?

4

4 に答える 4

2

「実用的な」方法はscript、ドキュメントの末尾の前にブロックを配置することです(domreadyと実際には同等ではありません)

  ...
  <script>...</script>
  </body>
</html>

またはhttp://snipplr.com/view/6029/domreadyjs/のような DomReady イベントのさまざまな純粋な js 実装のいずれかを使用します

于 2012-07-31T11:36:20.123 に答える
0

DOMContentLoadedサポートされている場合は、イベントを使用できます。

MSDN: http://msdn.microsoft.com/en-us/library/windows/apps/hh868490.aspx

MDN: https://developer.mozilla.org/en/DOM/DOM_event_reference/DOMContentLoaded

于 2012-07-31T11:46:06.460 に答える
0

このように達成されることもあります

<body>
<!--
All your html tags here
....
....
-->



    <script type="text/javascript">
      //this should execute after the above tags and elements have rendered
    </script>
</body>
于 2012-07-31T11:39:02.700 に答える
0

「準備完了イベント」を本当に待ちたい場合は、たとえばそのようなことを使用できます。

    (function(w,evt,fn){
        if (w.addEventListener){// W3C DOM
            w.addEventListener(evt,fn,false);
        }
        else if (w.attachEvent) { // IE DOM
            w.attachEvent("on"+evt, fn);
        }

    })(window,'load',function(){
       // your code here
    });

ただし、適切に配置された「スクリプト」タグを使用する方が実際には優れています。コードがおそらく機能し、すぐに開始されるからです。

于 2012-07-31T12:05:42.940 に答える