老师,我这个为什么关闭不了?

老师,我这个为什么关闭不了?

<input type="button" value="关闭本页面" id="close">
           <input type="button" value="打开慕课网" id="open">
           <script type="text/javascript">
           //补充代码
            /*var close1=document.getElementById("close"),
                open1=document.getElementById("open");
            close1.onclick=function(){
                window.close();
            }
            open1.onclick=function(){
                window.open("http://www.imooc.com","imooc","height=200px;")
            }*/
            var btn=document.getElementsByTagName("input");
            btn[0].onclick=function(){
                window.close()
            }
            btn[1].onclick=function(){
                window.open("http://www.imooc.com","imooc","height=50px")
            }
       </script>


老师我这个关闭不了,控制台提醒   脚本不得关闭非脚本打开的窗口。请老师解答一下


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你好同学

因为安全理由,浏览器不支持直接使用脚本关闭窗口。
火狐会直接提示:
脚本不得关闭非脚本打开的窗口。

这是火狐浏览器自身做的限制,所以需要自己进行修改配置:步骤如下
1. 打开火狐浏览器,

2. 地址栏输入about:config

http://img1.sycdn.imooc.com//climg/5bea2bfc0001bee406690148.jpg

3. 找到dom.allow_scripts_to_close_windows这项,默认值为false,双击修改成true,就可以使用脚本关闭窗口了。

http://img1.sycdn.imooc.com//climg/5bea2c17000181f308220255.jpg

实测 Firefox 63.0.1可用。

祝学习愉快!



  • 程序累人猿 提问者 #1
    谢谢老师,问题解决了
    2018-11-13 17:05:00
妮可妮可妮_ 2018-11-12 15:10:54

你好同学,

测试了你的代码可以关闭当前页面,建议同学清除缓存,使用谷歌或者火狐浏览器重新测试

祝学习愉快!


  • 提问者 程序累人猿 #1
    老师你好,我用的就是火狐浏览器,而且清楚了缓存, 但是还是显示 脚本不得关闭非脚本打开的窗口
    2018-11-12 19:45:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师