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

window.open获取window对象

window.open获取window对象

12345678_0001 2018-09-12 06:34:23
我想使用window.open获取window对象,对打开的网页进行操作,如果是本地的页面,是可以获取到window对象的:var win = window.open('test.html');但是如果是网上的页面就获取不到:var win = window.open('https://www.baidu.com/');就算对这个异常的window对象进行处理也会报错:只有一种方法,把这个页面改成HTA程序可以得到百度的window对象可以进行操作,必须是在默认浏览器为IE的情况下。为什么其他浏览器(chrome/firefox)获取不到百度的window对象?既然HTA可以获取百度的window对象,为什么IE下可以,其他浏览器不行?
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

同源策略,域名、协议、端口都相同的话,JS才能相互访问资源。
本地能用,应该是你原本的页面也是本地的所以符合同源策略。
HTA能用应该因为HTA不是直接用的IE,而是WebBrowser组件,IE和WebBrowser组件虽然本质上都是一个内核,但是默认的安全策略、兼容性等有所不同,前者严格很多。

查看完整回答
反对 回复 2018-10-19
  • 1 回答
  • 0 关注
  • 511 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号