为了账号安全,请及时绑定邮箱和手机立即绑定

从另一个页面访问功能(IE11)

从另一个页面访问功能(IE11)

尚方宝剑之说 2021-04-08 14:15:30
我有一个打开子页面(IE11)的父页面。我想向父页面添加一些控件,以触发子页面中的某些功能。这是父页面的内容(简体):<script>    let newWindow = window.open('cannon.htm','Picture Display', 'width=780, height=520');</script><button onclick="newWindow.actions.sayHello()">Say</button>这是子页面的内容(简体):let actions;window.addEventListener('load', function() {    actions = (function() {        return {            sayHello: function() {                 console.log("hello");            }        }    })();});这将引发错误。为什么?我该如何运作?错误:无法获取未定义或空引用的属性“ sayHello”
查看完整描述

2 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

使用单独的脚本:


cannon.js:


let actions;


window.addEventListener('load', function() {


    actions = (function() {


        return {

            sayHello: function() {

                 console.log("hello");

            }

        }


    })();


});

cannon.htm:


<script src="cannon.js"></script>

父页面(index.html):


<script src="cannon.js"></script>


查看完整回答
反对 回复 2021-04-22
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

我找到了解决方案!非常简单:仅使用var actions;而不是let actions;访问该功能。let限制范围,因此无法访问。



查看完整回答
反对 回复 2021-04-22
  • 2 回答
  • 0 关注
  • 150 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信