window.open 浏览器差异.
浏览器实现差异:
| 浏览器 | 无参数 | width,height | left,top | toolbar | location |
Directories
|
Status
|
Menubar |
Scrollbar
|
Resizable
|
screenX,screenY
|
FullScreen |
| 期待结果 | 有标签的 标签 无标签的 弹窗 |
尽量按指定 宽高弹窗 |
语义冲突的参数 相对parent页 left ,top位置 |
默认 无工具栏 yes 有工具栏 no 无工具栏 |
默认 有(r) yes 有(w) no 无 (r)只读,(w)可写 |
这玩意到底 是神马? 只有IE6支持 无期待结果 |
默认 无 yes 有 no 无 |
垃圾参数 无视. 只对早期 ie有效 |
默认auto yes auto no 无 |
默认 是 yes 是 no 否 |
真正语义上的参数 相对屏幕坐标 |
全屏显示 |
| IE | 6 弹窗
7-8 弹窗 9 标签 |
全部 ok | (注1) | 全部
默认无 yes 有
no 无 |
6 默认 无 yes 有(w) (toolbar也有了) no 无 7,8,9 |
6 toolbar去掉 location部分 7,8,9不支持 |
6,7,8 无视参数 始终 有 9 |
全部 无视参数 始终 无 |
全部 默认 否 yes 是 no 否 |
不支持 | 全部 支持 |
|
| Chrome | 全部 标签 | 全部 ok | 全部相对
父页面
left,top |
不支持此参数 弹窗木有工具栏 |
不支持此参数
始终有,且只读 |
不支持 | 无status bar | 1 无视参数 始终 无 2+ |
不支持此 参数,一律 可缩放 |
完全 ok | 不支持 | |
| FireFox | 1, 1.5 弹窗
2.0+ 标签 |
全部 ok |
全部 top 相对屏 幕 |
默认无
yes 有
no 无 |
1, 1.5, 2 默认 无 yes 有(r) no 无 3+ |
不支持
|
无视参数 始终 有 |
无视参数
始终 无
|
2- 默认 否 yes 是 no 否 3+ |
完全 ok
|
3.6- 不支持 4 |
|
| Safari | 3+ 弹窗 (Safari5 偏好设置 ,在标签中打开新 页面, 选项有-总是 ,永不,自动.默认是 永不.导致此问题.) |
3+ ok |
全部
left 相对父页面 (但当父窗体left的
位置导致新窗体不
能全部显示时,则
新窗体left,相对屏
幕为0,与ie7有些
相似)
top 相对屏幕
|
默认无
yes 有
no 无 |
默认 无 yes 有(w)(但 工具栏也有了) no 无 |
不支持
|
默认 无
yes 有 no 无 |
无视参数
始终 无
|
不支持此
参数,一律 可缩放 |
完全 ok
|
不支持
|
|
| Opera | 9.2+ 弹窗 | 9.2 tab
9.6+
标签(有宽高,可拖
拽.但无法离开父
窗口)
|
9.6+
相对父页面
的left,top
9.2 标签
|
9.2 tab
9.6+ 因其本质 |
9.2 tab
9.6+ 因其本质
是tab所以无视 此参数.共享 location
|
不支持
|
9.2 tab
9.6+ 因其本质
是tab所以无视 此参数.共享 statusbar
|
无视参数
始终 无
|
不支持此
参数,一律 可缩放 |
不支持
|
不支持
|
|
| 360安全 | 3.3+ 标签
3.612 弹窗 |
3.612 弹窗(无视 宽高参数parent 页面多大新弹窗 就多大) 其他版本 标签 |
3.612 left top 和parent页面 有关,但位置算 法很混乱. 其他版本 标签
|
3.612 弹窗无视 一切参数.显示 一个完整窗口 其他版本 标签
|
.. | .. | .. | .. | .. | .. | .. | .. |
| 360高速 | 两种内核都 标签 | IE内核 标签
chromium都 ok |
chromium
同chrome
其他内核 标签
|
..
|
.. | .. | .. | .. | .. | .. | .. | .. |
| 搜狗高速 | 两种内核都 标签 |
两种内核都 标签
|
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| TT | 标签 | 标签 |
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| QQ5 | 两种内核都 标签 |
两种内核都 标签
|
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| Maxthon2.5 | 标签 |
标签
|
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| Maxthon3 | 两种内核都 标签 | 两种内核都 标签 |
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| 世界之窗 | 标签 |
标签
|
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
| MyIe | 标签 |
标签
|
标签
|
.. | .. | .. | .. | .. | .. | .. | .. | .. |
第二参数target(name)相关:
用途:
如果已经存在一个窗口对象的name为abc.则后面再次window.open(url,'acb')的话.那么只会操作这个窗体对象的url,导致跳
转或reload(false).无论它是iframe还是一个被open的独立的窗体
差异:
.IE下name的值为null 或 undefined时,行为与其他浏览器有差异. 等价于 'null' 或 'undefined' .在期望打开多个窗口,又想设置其他窗口参数时,参数设置此2值.会被视为有效的name值. (解决办法,使用 '' 空字符,或'_blank'代替 null 或 undefined. 建议用优先考虑空字符,因为某些浏览器的早期版本不支持 _blank)
.Opera,Chrome 下,如果一个iframe的id,与window.open的第二参数name同名.也具备同样效果. 其他浏览器则无此现象.
.Opera9.6+ ,如果在另一个iframe内调用其self.open的第二参数name与其他iframe的name或id同名,则仍然会重新打开一个窗口. 而不是去操作该iframe.其他浏览器则无此问题
IE7. left 相对的位置,总是相对非最大化时,父页的left+10px左右偏移.(就是非最大化时,显示在哪,最大化时,就显示在哪.但并不总是相对非最大化时的父窗口left,比如在父窗口left很靠右的情况下,则其会新窗口会变成相对屏幕来显示)
IE8. left,top全部相对屏幕
IE9. left 同IE6类似top 相对屏幕总是0
window.open 浏览器差异.的更多相关文章
- 几个JavaScript的浏览器差异处理问题
JQuery确实是个很好用的库,你可以不用考虑很多细节方面的事情.但很作为一个web前端,处理和了解浏览器差异一个重要问题.下面将介绍一些总结,先介绍没有使用js库的情况. 1. setAttribu ...
- Javascript不同浏览器差异及兼容方法
原文链接:http://caibaojian.com/js-ie-different-from-firefox.html javascript的各种兼容就是为了解决不同浏览器的差异性,了解其中的差异能 ...
- 【转】window.scroll 浏览器滚动条的参数总结
如内容超出单元格,则隐藏style="TABLE-LAYOUT: fixed" 让弹出窗口总是在最上面: <body onblur="this.focus();&q ...
- polyfill-eventsource added missing EventSource to window ie浏览器 解决方案
今天遇到一个 ie浏览器显示空白,报错内容是: polyfill-eventsource added missing EventSource to window的问题, import 'babel-p ...
- JavaScript Window History 浏览器的历史
window.history 对象在编写时可不使用 window 这个前缀. 为了保护用户隐私,对 JavaScript 访问该对象的方法做出了限制. 一些方法: history.back() - 与 ...
- window.open浏览器弹出新窗口被拦截—原因分析和解决方案
最近在做项目的时候碰到了使用window.open被浏览器拦截的情况,在本机实验没问题,到了服务器就被拦截了,火狐有拦截提示,360浏览器拦截提示都没有,虽然在自己的环境可以对页面进行放行,但是对用户 ...
- window.hostory(浏览器的历史记录)
浏览器会对同一个窗口(选项卡)中访问的网页进行记录,不管我们是通过以下哪种方式改变网页,浏览器都会把改变后的网页记录下来,以便通过浏览器的前进和后退按钮,能够快速的切换到已经访问过的网页: 1)直接 ...
- jquery-ajax-async之浏览器差异
最近的PC项目遇到了一个问题,日志记录程序会在1s内多次发起对首页的请求,一时间没有找到原因. 简单描述一下问题:访问一个首页的时候,由于代码质量不高的原因,访问就连接数据库,但是同时存在的问题是一秒 ...
- 浏览器差异bug汇总(js篇)
获取滚动条高度 var scrollTop = document.body.scrollTop || document.documentElement.scrollTop; safari浏览器时间函数 ...
随机推荐
- Redis PK Memcached
没有必要过多的关心性能,因为二者的性能都已经足够高了.由于Redis只使用单核,而Memcached可以使用多核,所以在比较上,平均每一 个核上Redis在存储小数据时比Memcached性能更高.而 ...
- Bzoj4818:生成函数 快速幂
转来的题面:首先这题显然补集转化,就是用全部方案减去不含任何质数的方案.然后怎么做呢?考虑m比较小,我们能大力把<=m的质数全都筛出来.发现n很大,要么倍增要么快速幂......发现p相当小,所 ...
- BZOJ.4456.[ZJOI2016]旅行者(分治 Dijkstra)
题目链接 \(Description\) 给定\(n\times m\)的带边权网格图.\(Q\)次询问从点\((x_i,y_i)\)到点\((x_j,y_j)\)的最短路. \(n\times m\ ...
- BZOJ 3564: [SHOI2014]信号增幅仪 最小圆覆盖
3564: [SHOI2014]信号增幅仪 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=3564 Description 无线网络基站在 ...
- C# 实现IDisposable的模式
来自MSDN官方文档:http://msdn.microsoft.com/en-us/library/system.configuration.provider.providercollection. ...
- Beyond Compare 4提示已经过了30天试用期,破解方式,亲测可用
修改注册表 1)在搜索栏中输入 regedit ,打开注册表 2) 删除项目:计算机\HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compar ...
- Java删除ArrayList中的重复元素
Java删除ArrayList中的重复元素的2种方法 ArrayList是Java中最常用的集合类型之一.它允许灵活添加多个null元素,重复的元素,并保持元素的插入顺序.在编码时我们经常会遇到那种必 ...
- httpwatch抓包工具的使用方法
火狐浏览器下有著名的httpfox,而HttpWatch则是IE下强大的网页数据分析工具.这个工具到底有哪些具体功能呢?这个我就不再赘述了,百度百科上列的很全面,但也比较抽象.我只想说我曾经用这个工具 ...
- [原创]App性能测试指标篇
[原创]App性能测试指标篇 目前由于苹果,三星等大厂对智能手机的研发及投入,使的智能手机发展非常迅速,每个人手中都有一些离不开生活的App,如:微信,微博,百度或是各游戏App等,但是到底App性能 ...
- 微信公众号 JSSDK 提示:invalid signature
要命的invalid signature.其实腾讯的文档已经写了,只能怪我自己理解能力太差,掉了好几次坑. 签名要用到的jsapi_ticket需要保存的,2小时有效期.如果在2小时内出现问题需要删除 ...