ある種のJQueryの問題が発生し(数回前に開始しました)、非常に大きなhtmlページがあり、このページの先頭にウィジェットがありますが、document.readyを実行したので、すべてのページが待機しています。実行する前にロードされますが、長すぎます。
では、ウィジェットがロードされた直後にjqueryを実行するにはどうすればよいですか?$(myWidget).ready()のようなものを試しましたが、機能しません
私は十分に明確であることを願っています
乾杯
jQueryのドキュメントを見ると:
$(function () {
// Everything here will be called AFTER the DOM is loaded
// So it will be called after your widget is loaded
// but it will wait that your whole page is loaded.
});
しかし、ウィジェットの準備ができた直後にJavascriptコードを実行し、ページ全体が読み込まれるのを待たない場合、私が知っている唯一の(適切な)方法は、DOM操作を使用してJavascriptを介してウィジェットを作成することです。そうすることで、@Robbertによって提供されたコードを使用できます。
次に、悪いコードを使用してもかまわない場合は、HTMLウィジェットの直後にjavascriptを実行できますが、これはひどく間違っているため、実行することはお勧めしません。
<div class="widget">
<!-- Your widget html code -->
</div>
<script>
// your JS code
</script>
与えられた3つの解決策に基づいて、JavaScriptから直接ウィジェットを生成することをお勧めします。邪魔にならず、ページ全体が読み込まれるのを待つ必要はありません。
そのウィジェットの後にJavaScriptを追加するだけで、ロードイベントは発生しません。
次のようなものを試してください
widget_function()
$(document).ready(
other JS
)
document.readyの外でウィジェットを実行するだけで、HTMLの前に読み込まれます。