2012-09-24 57 views
4

我有一個腳本,它將iframe的一部分(iframe無標題)剪切並顯示出來。我的問題是,如果我在此iframe中執行操作,iframe將重新加載,但不會應用jquery篩選以僅給出該部分,但instad會向我提供所有帶有標題的頁面,所以我假設該腳本在重新加載iframe無窗口重新加載的主頁有iframe:iframe中的操作打破了我的腳本jQuery

<iframe class="test" width="100%" height="100%" src="/message.html?msjId=260" style="height:100%;width:100%;"> 

$(window).load(function() { 
    $('.test').each(function(){   

     var filteredContents1 = $(this).contents().find('.div_iframe').html(); 
     $(this).contents().find('body').html(filteredContents1);  

    }); 

}); 

請問有什麼解決辦法?

回答

1

我想你還需要爲框架添加加載事件。在document.ready函數中添加load事件,如下所示。如果它有效,您可能可以省略您已經擁有的用於過濾幀數據的窗口加載事件。

$(document).ready(function(){  
     $('.test').load(function() { 

     var filteredContents1 = $('#frame1').contents().find('#divChild').html(); 
     $('#frame1').contents().find('body').html(filteredContents1); 

     }); 
    }); 

上提問

$(document).ready(function(){  
     $('.test').load(function() {    

     $('#frame1, #frame2, #frame3').each(function(){ 
      var filteredContents1 = $(this).contents().find('#divChild').html(); 
      $(this).contents().find('body').html(filteredContents1); 
     });    

     }); 
    }); 

的請求更新。

+0

一如既往@Adil你是一個天才!非常感謝您的幫助! – Abude

+0

非常感謝@Jimmy ... – Adil

+0

請問Adil如果我有多個iframe請用另一個支持'.each'的代碼更新此答案?因爲現在它顯示3個相同的iframes ..我很欣賞它很多 – Abude