【问题标题】:actions within the iframe breaks my script jQueryiframe 中的操作破坏了我的脚本 jQuery
【发布时间】:2012-09-24 12:01:44
【问题描述】:

我有一个脚本可以剪切 iframe 的一部分(没有标题的 iframe)并显示它。我的问题是,如果我在这个 iframe 中执行操作,iframe 会重新加载,但没有应用 jquery 过滤来只给我那部分,但 instad 给了我所有带有标题的页面,所以我假设脚本在重新加载时不起作用iframe 没有具有 iframe 的主页面的窗口重新加载:

<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);       

     });

 });

请问有什么解决办法吗?

【问题讨论】:

    标签: javascript jquery jquery-ui html iframe


    【解决方案1】:

    我认为您还需要为帧添加加载事件。在 document.ready 函数中添加加载事件,如下所示。如果它有效,您也许可以省略您已经拥有的用于过滤帧数据的窗口加载事件。

      $(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);
             });            
    
          });
      });
    

    .

    【讨论】:

    • 一如既往@Adil你是个天才!也非常感谢您在这里提供帮助!
    • 如果我有多个 iframe,请阿迪尔用另一个支持 .each 的代码更新这个答案吗?因为现在它显示了 3 个相同的 iframe。我非常感谢它
    • 请您帮我解决“我想在 javascript 中添加一个自定义函数以在单击提交按钮时执行”?如果你能帮助我,我会提出一个问题,或者你可以开一个聊天室,我们在那里谈谈
    • 如果你提出问题,你会得到很多好的答案,你可以试试这个并告诉我,这样我可以在你完成后删除这个评论 $(document).ready(function(){ $( '#yourbuttonId').click(function () { alert("clicked me"); }); });
    • 它不会以这种方式工作,因为执行是在 iframe 内,所以它会像:onload="parent.myFunction()",但问题是我无法获得 myFunction 调用。我的意思是我有这样的$('.table').eq(1).find('tbody tr').eq(0).after('&lt;tr&gt;&lt;td colspan=10&gt;&lt;iframe class="icontent" src="/message.html?msgId='+$('.table').eq(1).find('tbody td a').eq(0).text()+'&amp;constant=1"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;'); 并且不知道如何调用或定义函数..:(我们可以在聊天室里说话吗?
    猜你喜欢
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-23
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多