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 相关文章推荐
javascript的键盘控制事件说明
Apr 15 Javascript
JS小功能(onmouseover实现选择月份)实例代码
Nov 28 Javascript
JavaScript排序算法之希尔排序的2个实例
Apr 04 Javascript
分享2个jQuery插件--jquery.fileupload与artdialog
Dec 26 Javascript
angularjs创建弹出框实现拖动效果
Aug 25 Javascript
巧用数组制作图片切换js代码
Nov 29 Javascript
ES6新特性三: Generator(生成器)函数详解
Apr 21 Javascript
VSCode配置react开发环境的步骤
Dec 27 Javascript
vue的for循环使用方法
Feb 12 Javascript
vue 实现小程序或商品秒杀倒计时
Apr 14 Javascript
Vue注册组件命名时不能用大写的原因浅析
Apr 25 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
Jul 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
将兴奋、喜悦和坎加斯带到戴安娜:亚马逊公主
2020/03/03 欧美动漫
用户的详细注册和判断
2006/10/09 PHP
PHP单例模式详细介绍
2015/07/01 PHP
php cli配置文件问题分析
2015/10/15 PHP
PHP程序中使用adodb连接不同数据库的代码实例
2015/12/19 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
php bootstrap实现简单登录
2016/03/08 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
2020/03/29 PHP
IE JS编程需注意的内存释放问题
2009/06/23 Javascript
js FLASH幻灯片字符串中有连接符&的处理方法
2012/03/01 Javascript
js无刷新操作table的行和列
2014/03/27 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
原生js仿jquery animate动画效果
2016/07/13 Javascript
微信小程序实现图片预加载组件
2017/01/18 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
seajs中最常用的7个功能、配置示例
2017/10/10 Javascript
Vue中正确使用jQuery的方法
2017/10/30 jQuery
vue+webpack实现异步组件加载的方法
2018/02/03 Javascript
Vue中的this.$options.data()和this.$data用法说明
2020/07/26 Javascript
微信小程序实现聊天室
2020/08/21 Javascript
Python中的左斜杠、右斜杠(正斜杠和反斜杠)
2016/08/30 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Python命令行解析模块详解
2018/02/01 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
对python中的乘法dot和对应分量相乘multiply详解
2018/11/14 Python
使用 Django Highcharts 实现数据可视化过程解析
2019/07/31 Python
Python 分发包中添加额外文件的方法
2019/08/16 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
Matplotlib.pyplot 三维绘图的实现示例
2020/07/28 Python
CSS3混合模式mix-blend-mode/background-blend-mode简介
2018/03/15 HTML / CSS
拓展培训心得体会
2014/01/04 职场文书
2014年商场超市庆元旦活动方案
2014/02/14 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
素质教育培训心得体会
2016/01/19 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
tomcat下部署jenkins的方法
2022/05/06 Servers