Re: [問題] iframe置換function問題,求解

看板Ajax作者 (路人)時間11年前 (2014/04/17 10:09), 11年前編輯推噓2(203)
留言5則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《azureshin (azureshin)》之銘言: : 小弟卡在一個iframe操作問題 : 有一個 B 網頁,載入了B1.js,其中B1.js有一個 foo()會被B網頁的按鈕觸發 : A網頁內置入Iframe ,來源是B網頁. : 現在有一個需求,需要置換B網頁的foo(),且要從A網頁著手,所以我就突發起想 : http://ppt.cc/lOT0 : 但還是不行....請指教該怎做 因為你在A網頁的scope使用getScript,B2.js當然會載入到A網頁,如果你堅持在A網頁讀檔,然後再塞入B網頁,你可以使用ajax方式。 如下: var defered = $.get("B2.js"); defered.done( function( resp ){ var iframeWindow = $iframe.get(0).contentWindow; iframeWindow.eval( resp ); iframeWindow.document.querySelector("button").onclick = function(){ iframeWindow.foo(); }; }); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.219.10.223 ※ 文章網址: http://www.ptt.cc/bbs/Ajax/M.1397700571.A.8C2.html ※ 編輯: foreverangle (61.219.10.223), 04/17/2014 10:11:17

04/17 10:55, , 1F
不知道如 iframeWindow.foo = B2_foo 這樣是否有效?
04/17 10:55, 1F

04/17 11:17, , 2F
理論上會work,但跟dom有關的會炸,因為是在主視窗執行
04/17 11:17, 2F

04/17 11:18, , 3F
所以window會綁到主視窗去
04/17 11:18, 3F

04/17 11:27, , 4F
alert之類的也會出問題
04/17 11:27, 4F

04/17 15:19, , 5F
太神了...感謝您
04/17 15:19, 5F
文章代碼(AID): #1JJpVRZ2 (Ajax)
文章代碼(AID): #1JJpVRZ2 (Ajax)