博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IE 与 FF冲突与不同支持点汇总
阅读量:2022 次
发布时间:2019-04-28

本文共 1469 字,大约阅读时间需要 4 分钟。

一直都发现IE与FF有太多的不同点,但一直没有总结下来,从今天开始,我会在这篇博客里记录下,我所碰到的IE与FF不同的地方,以及相应的解决办法;

1、判断是不是IE浏览器

if("\v"!=="v"){//判断是不是IE浏览器,这里是如果不是,则执行下现的代码			//如果不是IE的话,CODE HERE		}
//方法二:
var ie = (navigator.appVersion.indexOf("MSIE")!=-1);//IE  if(ie){}
2、IE与FF的焦点问题

IE中:

在点击一个元素时,如果这个元素能够设为焦点,包括能设置焦点的DIV元素,则IE会自动将其设为焦点,无需人为的再次设置,如果再次设置在IE中会出现此DIV完全显示出来

如下图,这是在点击时,没有添加$(this).focus()代码的,在点击红线框框住的DIV元素时,在DIV元素周围会出现,此DIV的实现大小如红框所示,说明此时IE已经将其设为焦点

下面我们再看下如果添加了$(this).focus()后再次点击会出现什么效果:

看到了吧,在点击之后,这个DIV元素不仅被设为焦点,而且还多了一个动作,就是全部都显示出来,可以看到把左边的那个DIV元素给挤出去了,这就出现了错误;

结论:如果要在IE中设置焦点,不需要使用$(this).foucs()函数,只需要将此DIV添加上具体设置焦点的属性即可,在点击时IE会自动将其设为焦点;

FF中:

在FF中,点击一下DIV,没有任何反应,必须添加上$(this).foucs()才会将其设为焦点,而$(this).foucs()实现的效果正常,不会出现IE所示的情况

解决办法:我们要在加$(this).foucs()设置焦点时,得先判断是不是IE浏览器,如果不是,我们就给它加上这句代码;代码如下:

if("\v"!=="v"){//判断是不是IE浏览器,如果不是则加入FOCUS,因为IE会在点击时自动将其设为焦点,而FF不会			$(this).focus();		}

3,JS的event.clientX   event.clientY 与JQUERY的event.pageX  event.pageY

我在FF中,本来用的是JS原生的clientY ,但获取值时,有时是错误的,调了好久才发现,后来换成jquery的pageY,成功解决!看来JQUERY对其封装是有原因的。clientX没试,不知道是不是也会出错;

4,input type='file'  上传控件,内容的清空

html语句如下:

JS语句如下:

if(ie){	var tempNode=document.getElementById("file");		var file2= tempNode.cloneNode(false);         file2.οnchange= tempNode.onchange;         tempNode.parentNode.replaceChild(file2,tempNode);    }else{	$("input[name=upfile]").val("");//FF清空方法   }

5,IE6中z-index不支持0零值

在IE中当遇到z-index为0值时,IE会自动将其设为1,但IE6是支持负值的,是而FF中是支持0值与负值的

 IE6中对于z-index是存在很多很多问题的,如果还有其它对于Z次序出问题的情况,这里有篇文章,很好,可以参考一下:

 

转载地址:http://ntrxf.baihongyu.com/

你可能感兴趣的文章
python写的本地搜索小工具
查看>>
編譯android原始碼到模擬器上執行
查看>>
防止页面后退(使浏览器后退按钮失效)
查看>>
漫说单例模式--宝宝成长记 你真的了解了吗?
查看>>
Java 序列化和反序列化
查看>>
新人讨论一:事务和两阶段提交
查看>>
HTTP高并发测试
查看>>
群晖如何实现不在同一网段的访问
查看>>
Pytorch框架学习(10)——损失函数
查看>>
pytorch框架学习(17)——模型的保存与加载
查看>>
【解决问题】OpenCV(3.4.1) Error: Parsing error (xx.yaml(13): Incorrect indentation) in icvYMLParseValue
查看>>
Qt之QLineEdit详解(附源码)
查看>>
Google Protocol Buffer 的使用和原理
查看>>
为什么要使用工厂模式
查看>>
apache 开启Rewrite
查看>>
poj1256 dfs(全排列)
查看>>
poj1028 模拟
查看>>
Ubuntu下使用SVN
查看>>
什么是RFC?
查看>>
为什么选择Mapabc
查看>>