看板 Ajax 關於我們 聯絡資訊
請問一下 A 網頁中 插入 IFRAME ID="F" SRC="B.HTM" DIV ID="TEST" B 網頁中 function ff(){ alert('ff'); } 在FF中好像沒辦法從 A網頁呼叫 ff() var oIf = document.getElementById('F'), win = oIf.contentWindow; 在A網頁寫 $('#TEST').click(function(){ win.ff() }) 會出現 win.ff is undefined 但是我寫在B 裡面 $("#TEST", parent.document.body).click(function(){ ff() }) 這樣又可以很正常運作.....有人可以說明一下為什麼嗎? 只限定 FIREFOX 因為我是在寫 GREASEMONKEY..... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.135.168
s25g5d4:當你寫在B裡時呼叫的ff()是在B裡定義的所以找的到 07/27 22:54
s25g5d4:但是你寫在A裡時卻沒有相應的函數可供呼叫 (iframe與原網 07/27 22:55
s25g5d4:頁的js是分開的 但是可以透過幾個方法呼叫就是了 07/27 22:55
s25g5d4:可以試試window.frames[0] 07/27 22:57
mesak:樓上提供的連結是操作 DOM 我指的是執行 FUNCTION 喔 07/28 00:55
mesak:A無法呼叫 B裡面的 FUNCTION 嗎? 07/28 00:56
shadowjohn:$("#F")[0].contentWindow.document.alert('a'); 07/28 08:09
shadowjohn:win.document.ff(); 07/28 09:46
mesak:http://mesak.wablog.info/test/a.htm 沒反應 07/28 10:36
shadowjohn:http://3wa.tw/demo/iframe_function_call/ 07/28 13:55
shadowjohn:再看看吧~我剛才又小改了一下 14:09 07/28 14:09
mesak:感謝,只是 搞不好用在 外掛上不能用了....想問一下 07/28 14:32
mesak:當 CLICK事件成立 IFRAME內的函式還沒讀取完畢,這樣CLICK 07/28 14:33
mesak:還有辦法運作嗎? 07/28 14:33
shadowjohn:那你可以用 iframe 的 onload 07/28 14:37
shadowjohn:<iframe onloal="........" ....> 07/28 14:37
shadowjohn:像是onload="$('#btn').show();" 這時你的按鈕才出現:) 07/28 14:39
mesak:嗯 過兩天試試看...現在在改 另一之外掛 Orz 謝謝shadowjohn 07/28 14:48