iframe 父窗口调用子窗口的js全局变量

直接上代码

这是子页面的一部分代码由于我要实现聊天功能,多以需要父页面调用子页面chat变量判断是否需要弹窗

<div class="container">

    <header><h3 id="username">与{{username}}聊天中</h3></header>
    <div id="result">

        <div  class="box" v-for="(message,index) in Message">
            <div class="mess" :class="message.id"><img v-show="message.id != id" id="otherHead" alt="head"  :src= "otherHead"/>{{message.text}}<img v-show="message.id == id"alt="head" id="head"  :src= "head"/></div>
        </div>

    </div>
    <footer>
        <textarea type="text" id="msgData" rows="5" class="form-control"></textarea>
        <input class="btn btn-danger btn-sm del-btn" type="button" id="send" value="发送">
    </footer>


</div>
<script>

    var chat = 0;
    var id = localStorage.getItem('id');
    var toId = getParam('toId');

这是父页面的界面,我用的是iframe作为子页面 src动态设置这里就略过了直接来重点

<table width="1138px" height="960px" border="0" align="center" cellpadding="0" cellspacing="0">
	<tr>
		<td height="100%">
			<iframe name="content" id="iframe"  src="QueryPic.html" width="100%" height="100%" frameborder="0" scrolling="none">
			</iframe>
		</td>
	</tr>
	<div class="hello" hidden></div>
</table>

父窗口调用子窗口的chat变量(这里的chat需要是全局变量)

if(obj.toId == id && (null == $('#iframe').eq(0)[0].contentWindow.chat || null == window.frames["content"].chat)){
						layer.open({
							type: 2
							,title:"收到新消息"
							,offset: 'rb'
							,shade: 0
							,time: 5000
							,closeBtn: false
							,area: '100px,100px;'
							,anim: 4
							,content: ['/msg/msgController/init.htm?toId=' + obj.id, 'no']
							,btnAlign: 'c'
							,moveType: 0 //拖拽模式,0或者1
							,btn: ['知道了','打开']
							,btn2:function () {
								$('iframe').attr("src",baseUrl + '/msg/msgController/init.htm?toId=' + obj.id);
							},success:function () {
								$('#remark').focus();
							}

						})
					}

这里可以看到
$(’#iframe’).eq(0)[0].contentWindow.chat (通过id获取)
window.frames[“content”].chat(通过name获取)
都能获得chat的值
我这里做的是个兼容

(新手上路,欢迎指教)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值