0

ページにiframeがあり、頭にこの関数(Jqueryに基づく)があります

*$(window).load(function(){     
    $('#framelearning').contents().find('a').click(function(event) {
        alert("clicked!");
    }); 
});

正常に動作します...しかし、ユーザーがリンクをクリックしてこの iframe の URL を変更すると、動作しません。この機能は、ロードされた最初のページに対してのみ機能します。この関数を変更して、iframe に読み込まれたすべてのページで動作するようにすることは可能ですか? ありがとう!

4

1 に答える 1

0

$(window).load()は1回だけ読み込まれるため、iFramesrcが変更されても何も実行されません。

理想的には、機能をカプセル化して再利用できるようにすることですが、それでも、iFrameのonloadイベントにフックできるかどうかはわかりません。

このようなものは私が想像するものです:

function captureLinks() {
    $('#framelearning').contents().find('a').click(function(event) {
        alert("clicked!");
    });
}

$("#myiframe").on("load",captureLinks);

HTMLに関する詳細がなければ、これが解決しようとしている問題に本当に対処できるかどうかはわかりません。

于 2013-02-12T15:18:12.947 に答える