前端iFrame跨域问题

一、父域访问子域的元素

项目需求:

  iFrame是个聊天窗口,要求聊天窗口中点击图片图标,在父域将内容展示出来。

解决方法:(jQuery)

  首先/要等iFrame加载完再执行函数!(代码如下)

   var isOnLoad = true; 

     $('#iframe_con').load(function() {
          isOnLoad = false;// 加载完成
         Apple();
     });

  然后/在父域里选择子域的元素添加事件和完成函数即可!(代码如下)  

    //模态框
   function Apple(){

    var oE={
      wheight:$(window).height(),
      wwidth:$(window).width(),
      showdown:$('.showdown'),
      Apple:$('.Apple_wait'),
      Close:$('.ApClose'),
      Btn:$('#iframe_con').contents().find('.Apactive_chat')//选择子域的元素
      };

    oE.showdown.height(oE.wheight>$('html').height()?oE.wheight:$('html').height());

    oE.Apple.css({left:(oE.wwidth-560)/2,top:(oE.wheight-207)/2+$(window).scrollTop()});

    oE.Btn.click(function(){//给子域的元素绑定事件

      oE.showdown.fadeIn();
      oE.Apple.fadeIn();
    });

    oE.Close.click(function(){
      oE.showdown.fadeOut();
      oE.Apple.fadeOut();
   });

二、子域访问父域的元素    

function zgz(){       

 $(window.parent.$("#maindiv").html("子页面赋过来的值"));

 }  

转载于:https://www.cnblogs.com/Greenzgz/p/4612660.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值