JAVASCRIPT 浏览器兼容性问题及解决方案列表
JAVASCRIPT 浏览器兼容性问题及解决方案列表
(1)获取HTML元素
只兼容IE:
document.all.hello
hello
兼容所有:
document.getElementById(“hello ”) 以ID来访问对象,且一个ID在页面中必须是唯一document.getElementsByTagName(“div”)[0] 以标签名来访问对象
document.getElementsByName("inputName")[1]
(2)获取FORM表单元素
只兼容IE:
document.formname.itemname
兼容所有:
document.forms[“formName”].elements[“itemname”]。
document.forms[i].elements[“itemname”]
(3)设置CSS
只兼容FireFox:
obj.setAttribute(style,color:green)
兼容所有:
document.getElementById("banana").className
document.getElementById("banana").style.color
document.getElementById("banana").onclick document.getElementById("banana").class="fruit" document.getElementById("banana").style.color="blue" document.getElementById("banana").onclick= function (){alert("我是香蕉")}
(4)设置长宽高
只兼容IE:
obj.style.height = imgObj.height
兼容所有:
obj.style.height = imgObj.height + 'px';
(5)obj.innerText
只兼容IE:
obj.innerText= "myText";
兼容所有:
if (document.all) {
obj.innerText = "myText";
}
else {
obj.textContent = "myText";
}
(6)Firefox下的onload问题
只兼容IE:
function over(){
alert("页面加载完毕")
}
document.body.onload= over
兼容所有:
window.onload=over
(7)打开窗口
只兼容IE:
IE中可以通过showModalDialog和showModelessDialog打开模态和非模态窗口
兼容所有:
直接使用window.open(pageURL,name,parameters)方式打开新窗口。
如果需要传递参数,可以使用frame或者iframe。
(8)获取Frame对象
只兼容IE:
var frame1 = window.testFrame
兼容所有:
window.top.document.getElementById("frameId")来访问frame标签
并且可以通过window.top.document.getElementById("testFrame").src = 'xx.htm'来切换frame的内容
也都可以通过window.top.frameName.location = 'xx.htm'来切换frame的内容
(9)变量名与某 HTML 对象 id 相同的问题
IE中对象 对象ID不能与HTML对象的ID同名。而Firefox可以。
兼容所有:
在声明变量时,一律加上 var ,以避免歧义,这样在 IE 中亦可正常运行。
此外,最好不要取与 HTML 对象 id 相同的变量名,以减少错误。
最新文章
- PHP设计模式(四)单例模式(Singleton For PHP)
- ascii、unicode、utf、gb等编码详解
- System系统类常用方法
- head标签详细讲解
- Keras学习~试用卷积~跑CIFAR-10
- Angular $scope和$rootScope事件机制之$emit、$broadcast和$on
- 【转】APP被苹果App Store拒绝的N个原因(持续补充)
- c++中ifstream读文件的问题(关于eof())
- 添加hive默认配置hiverc
- ASP.NET 4.0 Webform Bundles 压缩css, js,为什么放到服务器不行
- Java多线程——Semaphore信号灯
- 为什么很多语言选择在JVM上实现
- 字符串处理——strpos()函数
- express设置ejs并将后缀改为html
- 基于最简单的FFmpeg采样读取内存读写:内存玩家
- C#中“类似GridView等控件”的前台显示与后台数据变化之间的关系
- java 邮件发送的公共方法
- python入门(11)条件判断和循环
- 蓝桥杯 黄金连分数(BigDecimal的使用)
- LeetCode专题-Python实现之第26题:Remove Duplicates from Sorted Array