Layer:如何調用layer.open打開的的iframe窗口中的JS?


layer.open({
type: 2,
content: 'test/iframe.html',
success: function(layero, index){
  var body = layer.getChildFrame('body', index);
  var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe頁的窗口對象,執行iframe頁的方法:iframeWin.method();
  console.log(body.html()) //得到iframe頁的body內容
  body.find('input').val('Hi,我是從父頁來的')
}
}); 

 

如上面的代碼所示,也就是可以使用iframeWin.method(); 來執行父頁面上的JS方法,
iframeWin 是通過window[layero.find('iframe')[0]['name']]來獲取,其中要用到layero這個變量,它是通過success這個function傳入,一直到這里都沒有問題
但是問題來了,如果我想在頁面的其它地方來用執行父頁面或其它通過layer.open方法找開的子頁面,又該怎么做呢?(畢竟其它地方至少是找不到layero這個變量的)

解決辦法:parent.window['layui-layer-iframe' + index].window


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM