0

ページが開いたときにメニューのページをdivにロードするために以下のJQueryを使用するindex.htmlファイルがあります。以下のコードのリスナーは、index.html ファイル内のすべての要素で動作しますが、jquery スクリプトによって読み込まれたファイル内の要素では動作しません。

ここに私のjqueryコードがあります

$(document).ready(function() { // this runs as soon as the page is ready (DOM is loaded)

    $("#leftmenu") // selecting "div" (you can also select the element by its id or class like in css )
       .load("http://www.maa.intranet.bae.co.uk/ma/Content/bus_serv/integrated_services/supply_chain_ss/information_assurance/leftmenu.html"); // load in the file specified

    $("#content").load("WebContent/welcome.html");

    $("div.menuitem").hover(
             function () {
               $(this).css({"background-color":"red"});
             }, 
             function () {
               $(this).css({"background-color":"blue"});
             }
         );


    $(".menulink").click(function(){
        alert("This is a test");
    });

});
4

4 に答える 4

1

これを試して

$(document).ready(function() { // this runs as soon as the page is ready (DOM is loaded)

    $("#leftmenu") // selecting "div" (you can also select the element by its id or class like in css )
       .load("http://www.maa.intranet.bae.co.uk/ma/Content/bus_serv/integrated_services/supply_chain_ss/information_assurance/leftmenu.html"); // load in the file specified

    $("#content").load("WebContent/welcome.html");

   $("body").on('hover','div.menuitem',
             function () {
               $(this).css({"background-color":"red"});
             }, 
             function () {
               $(this).css({"background-color":"blue"});
             }
         );


    $("body").on('click','.menulink',function(){
        alert("This is a test");
    });

});

説明 :

future 要素 -- リスナーをアタッチすることはできません

したがって、より高いレベル (この場合は "body") にアタッチし、クリックが発生すると、ターゲットが比較されて呼び出されます。

ps 少なくとも 5 つの重複した質問があると確信しています。

于 2013-07-30T14:30:52.390 に答える