我想啓動我的iframe加載函數,問題是有些是動態生成的,哪個不會觸發.load()事件,我試過了:動態生成的iframe不響應.load()
$('.upload-target').on('load',uploadDone)
function uploadDone(){
alert('ewfweewf');
}
但沒有運氣..我怎麼能觸發一個動態生成的iframe的加載功能?
我想啓動我的iframe加載函數,問題是有些是動態生成的,哪個不會觸發.load()事件,我試過了:動態生成的iframe不響應.load()
$('.upload-target').on('load',uploadDone)
function uploadDone(){
alert('ewfweewf');
}
但沒有運氣..我怎麼能觸發一個動態生成的iframe的加載功能?
正如你可以在這個小提琴看到,http://jsfiddle.net/Uj3bH/ Load事件不傳播,因此,你將無法使用事件委託綁定到iframe的load事件。相反,在創建動態iframe時綁定事件。
$(iframehtmlstring).appendTo("body").on("load",function(){
console.log("worky")
});
試試這個:
$('.upload-target').load(function(){
alert('ewfweewf');
});
我會說,因爲相同來源政策 攻擊者可能濫用加載時間來獲得額外信息的負載不傳播。例如如果登錄加載時間可能需要更長的時間
如果沒有..好,然後我發現一個安全問題;)
首先,你需要使用的正確語法代表團。上。然而,我並不完全確定加載事件是否在所有瀏覽器中傳播(這會使你正在嘗試做的事情幾乎不可能完成,而不需要完全不同的路線) – 2013-02-19 22:05:23
他如何使用'.on ()'。一個直接來自jQuery自己的文檔的例子:function notify(){alert(「clicked」); }(「button」)。on(「click」,notify);' – idrumgood 2013-02-19 22:06:50
@idrumgood是的,但該語法不會將事件委託給動態元素。他錯過了委託目標和上下文。 – 2013-02-19 22:07:37