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.Encode手动解码技巧
Jul 14 Javascript
JS中实现replaceAll的方法(实例代码)
Nov 12 Javascript
js 左右悬浮对联广告特效代码
Dec 12 Javascript
JavaScript调用客户端Java程序的方法
Jul 27 Javascript
jQuery实现响应鼠标滚动的动感菜单效果
Sep 21 Javascript
需要牢记的JavaScript基础知识
Sep 25 Javascript
简单实现js悬浮导航效果
Feb 05 Javascript
node中koa中间件机制详解
Aug 22 Javascript
JS闭包原理与应用经典示例
Dec 20 Javascript
VsCode与Node.js知识点详解
Sep 05 Javascript
javascript canvas检测小球碰撞
Apr 17 Javascript
vue+django实现下载文件的示例
Mar 24 Vue.js
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开发框架总结收藏
2008/04/24 PHP
AMFPHP php远程调用(RPC, Remote Procedure Call)工具 快速入门教程
2010/05/10 PHP
详解yii2实现分库分表的方案与思路
2017/02/03 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
js传值 判断
2006/10/26 Javascript
ajax无刷新动态调用股票信息(改良版)
2008/11/01 Javascript
js window.event对象详尽解析
2009/02/17 Javascript
javascript天然的迭代器
2010/10/29 Javascript
jQuery中delegate和on的用法与区别详细解析
2014/01/26 Javascript
Chrome扩展页面动态绑定JS事件提示错误
2014/02/11 Javascript
js自动查找select下拉的菜单并选择(示例代码)
2014/02/26 Javascript
json属性名为什么要双引号(个人猜测)
2014/07/31 Javascript
移动Web中图片自适应的两种JavaScript解决方法
2015/06/18 Javascript
jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
2016/07/09 Javascript
详解vue-resource promise兼容性问题
2017/06/20 Javascript
vue实现表格增删改查效果的实例代码
2017/07/18 Javascript
js实现网页的两个input标签内的数值加减(示例代码)
2017/08/15 Javascript
JS实现页面内跳转的简单代码
2017/09/03 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
2011/03/13 Python
python如何使用unittest测试接口
2018/04/04 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
python找出列表中大于某个阈值的数据段示例
2019/11/24 Python
HTML5对手机页面长按会粘贴复制禁用的解决方法
2016/07/19 HTML / CSS
英国手机零售商:Metrofone
2019/03/18 全球购物
Opodo意大利:欧洲市场上领先的在线旅行社
2019/10/24 全球购物
PHP开发的一般流程
2013/08/13 面试题
教师年终个人自我评价
2013/10/04 职场文书
研修第一天随笔感言
2014/02/15 职场文书
工业设计专业自荐书
2014/06/05 职场文书
校运会口号
2014/06/18 职场文书
MySQL的join buffer原理
2021/04/29 MySQL
Python-OpenCV教程之图像的位运算详解
2021/06/21 Python
使用nginx配置访问wgcloud的方法
2021/06/26 Servers