IE和FireFox(FF)中js和css的不同


Posted in Javascript onApril 13, 2009

在IE和FireFox(FF)中js和css的不同
css:
1.
ul标签中FF中有个padding值,却没有margin值,而在IE中正好相反
解决办法:将ul的padding和margin都设为0(也可以不是0)如:padding:0;margin:0;list-style:none;
js:
1.
IE中innerText在FF中没有,使用textContent;
eg:

var obj=document.getElementById("_td"); 
var text; 
if(obj.innerText) { 
text=obj.innerText; 
} else if(obj.textContent) { 
text=obj.textContent; 
}

2.
在Ajax中返回对象状态IE可以使用readystate但是在FF中必须为readyState,所以最好是都写成readyState
3.获取IE和FF中的键盘返回值,
<input type="text" onkeyUp="test(event)"/>
function test(e) {
var keyc=GetKeyCode(e);
alert(keyc);
}
function GetKeyCode(e) {//取得不同浏览器下的键盘事件值
var keyc;
if(window.event) {//ie键盘事件
keyc=e.keyCode;
} else if (e.which) {//火狐
keyc=e.which;
}
return keyc;
}
4.为对象添加移除事件
var obj=document.getElementById("_tname');
添加事件:
if(obj.attachEvent) {
obj.attachEvent("onchange",function() {
otherfunction(params);//这里可以给其实方法传参,也可以直接调用其它方法
});
} else if(obj.addEventListener) {
obj.addEventListener("change",function() {
otherfunction(params);
},false);
}
移除事件:
obj.onclick=null;
/*下面的代码为什么不行,IE下输出obj.onclick竟然为anonymous,希望高手能帮忙解决
if(obj.detachEvent) {
obj.detachEvent("onchange",test);
} else if(obj.removeEventListener) {
obj.removeEventListener("change",test,false);
}*/
5.
IE中event.x和event.y
在FF中只有event.pageX,event.pageY
都有event.clientX和event.clientY属性
解决办法:
var x=e.x?e.x:e.pageX;//e为event对象传进来的参数
6.IE下 input.type属性为只读,但是MF下可以修改
7.在 IE 中,getElementsByName()、(document.all[name] (还未测试成功))均不能用来取得 div元素(是否还有其它不能取的元素还不知道)。
8.通过js来触发事件
<script type="text/javascript"><!--
function handerToClick(){
var obj=document.getElementById("btn1");
if(document.all){//IE中
obj.fireEvent("onclick");
} else {
var e=document.createEvent('MouseEvent');
e.initEvent('click',false,false);
obj.dispatchEvent(e);
}
}
// --></script>
<input type="button" value="btn1" id="btn1" onclick=" alert('按钮btn1的click事件') " />
<input type="button" value="触发ID为btn1的onclick事件" onclick=" handerToClick() " />
9.IE下event对象有srcElement属性,Firefox下,event对象有target属性
var obj=e.srcElement?e.srcElement:e.target;//e为event对象传进来的参数
//从这里下面的还未测试
10.在FF中自己定义的属性必须getAttribute()取得
11.节点问题
IE中使用parentElement parement.children,而FF中使用parentNode parentNode.childNodes
childNodes的下标的含义在IE和FF中不同,FF使用DOM规范,childNodes中会插入空白文本节点。
FF中节点没有removeNode方法,必须使用如下方法 node.parentNode.removeChild(node)
Javascript 相关文章推荐
文本链接逐个出现的js脚本
Dec 12 Javascript
js日历功能对象
Jan 12 Javascript
jquery $.each() 使用小探
Aug 23 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
Oct 23 Javascript
JavaScript中的原型链prototype介绍
Dec 30 Javascript
作为老司机使用 React 总结的 11 个经验教训
Apr 08 Javascript
详解Angular 4.x NgTemplateOutlet
May 24 Javascript
Thinkjs3新手入门之添加一个新的页面
Dec 06 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
Apr 05 Javascript
JS实现的3des+base64加密解密算法完整示例
May 18 Javascript
Vue引入sass并配置全局变量的方法
Jun 27 Javascript
ajaxfileupload.js实现上传文件功能
Apr 19 Javascript
javascript 清除输入框中的数据
Apr 13 #Javascript
iframe 自适应高度[在IE6 IE7 FF下测试通过]
Apr 13 #Javascript
IE8 原生JSON支持
Apr 13 #Javascript
由document.body和document.documentElement想到的
Apr 13 #Javascript
js cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 #Javascript
javascript removeChild 使用注意事项
Apr 11 #Javascript
Firefox window.close()的使用注意事项
Apr 11 #Javascript
You might like
使用PHP数组实现无限分类,不使用数据库,不使用递归.
2006/12/09 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
2015/01/04 PHP
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
JQuery中使用on方法绑定hover事件实例
2014/12/09 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
laydate.js日期时间选择插件
2017/01/04 Javascript
vue 2.0组件与v-model详解
2017/03/27 Javascript
js和jquery中获取非行间样式
2017/05/05 jQuery
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
2017/05/28 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
Vue中组件之间数据的传递的示例代码
2017/09/08 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
vue 实现搜索的结果页面支持全选与取消全选功能
2019/05/10 Javascript
详解基于mpvue微信小程序下载远程图片到本地解决思路
2019/05/16 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
python实现倒计时的示例
2014/02/14 Python
Python collections模块实例讲解
2014/04/07 Python
pip 错误unused-command-line-argument-hard-error-in-future解决办法
2014/06/01 Python
Python读取指定目录下指定后缀文件并保存为docx
2017/04/23 Python
python中不能连接超时的问题及解决方法
2018/06/10 Python
pycharm远程linux开发和调试代码的方法
2018/07/17 Python
python爬虫简单的添加代理进行访问的实现代码
2019/04/04 Python
Python+PyQt5实现美剧爬虫可视工具的方法
2019/04/25 Python
Django stark组件使用及原理详解
2019/08/22 Python
pygame编写音乐播放器的实现代码示例
2019/11/19 Python
香港个人化生活购物网站:Ballyhoo Limited
2016/09/10 全球购物
StubHub墨西哥:购买和出售您的门票
2016/09/17 全球购物
What is the purpose of Void class? Void类的作用是什么?
2016/10/31 面试题
铲车司机岗位职责
2014/03/15 职场文书
竞聘演讲稿
2014/04/24 职场文书
实训报告范文大全
2014/11/04 职场文书
2014年村计划生育工作总结
2014/11/14 职场文书
职工培训工作总结
2015/08/10 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书
Redis数据同步之redis shake的实现方法
2022/04/21 Redis