2017-05-10 18 views
0

で:()私はjQueryのload()メソッド使用して、別のHTMLファイルにHTMLファイルをロードしていますJavaScriptの

$("#sidebar").load("templates/sidebar.html"); 

<div id="sidebar"></div> 

を、私は私が実行したいJavaScriptのいくつかを持っていますロードされたHTMLファイルこのスクリプトは動作しません。実行時に新しいHTMLを見ることができないという事実のために私は信じています。たとえば、jQueryのこの行は、sidebar.html内に存在するメニューのクラスを表示できません。

$('.menu').css('left', '100'); 

ロードされたHTMLが実行前にレンダリングされるまで、スクリプトを強制的に待機させる方法はありますか?

+4

に追加された後、それは.LOAD()コールの終了時に実行されます'.load()'にコールバック関数を渡すことができ、DOMにコンテンツが追加されたときにその関数が呼び出されます。 – Pointy

+0

助けてくれてありがとう! – noclist

答えて

2

あなたは.LOAD()の呼び出しに追加するパラメータとして関数を渡すことができ、新たな要素がDOM

$("#sidebar").load("templates/sidebar.html", function() { 
    $('.menu').css('left', '100'); 
}); 

<div id="sidebar"></div> 
+0

ありがとう、トリックでした! – noclist

関連する問題