FF IE
bat文件 显示成网页 提示“保存”或“运行”
exe文件 提示“保存”(不能“运行”) 提示“保存”或“运行”
word文件 提示“保存”或“运行” 提示“保存”或“运行”
文件夹链接 显示成网页 打开Explorer
webstie首页显示 显示80%(取消状态栏) 显示100%(取消状态栏)
功能扩展 plug-in插件 activeX控件
功能扩展标签 <embed /> <object />
表格宽 在<col>定义,不能是第一行; 可以是第一行;

 

定义W3C的标准 IE Firefox Opera
document.body.clientWidth BODY对象宽 BODY对象宽度 可见区域宽度
document.body.clientHeight BODY对象高 BODY对象高度 可见区域高度
document.documentElement.clientWidth 可见区域宽 可见区域宽度 页面对象宽度(即BODY对象宽度加上Margin宽)
document.documentElement.clientHeight 可见区域高 可见区域高度 页面对象高度(即BODY对象高度加上Margin高)
没有定义W3C的标准,则 IE Firefox Opera
document.documentElement.clientWidth 0 页面对象宽度(即BODY对象宽度加上Margin宽) 页面对象宽度(即BODY对象宽度加上Margin宽)
document.documentElement.clientHeight 0 页面对象高度(即BODY对象高度加上Margin高) 页面对象高度(即BODY对象高度加上Margin高)

 

浏览器版本的确定

navigator.userAgent包括了许多装入页面的浏览器信息;
var isWindows=false
if("Win"IndexOf(navigator.userAgent") !=-1{
isWindows=true
}

("string"indexOf"string"可以判定前一字符串是否是后一字符串的字串,如果不是,则返回-1,如果是则返回前一字符串在后一字符串中的起始位置的索引值;)

IE和FF中js获取页面高度与宽度的对比

在做web前端开发的时候,我们经常要用JavaScript获取页面的高度和 宽度,但在不同的浏览器下获取的方法又不一样,或者说方法一样,但因为IE和FF对web标准的不同实现,同样的方法两浏览器得到的是不同的高度或者宽 度。下面就对IE和FF中js获取页面高度与宽度做下对比:

1、window.screen.width/.height: 显示器大小(IE和FF通用)1440 * 900 –> 和浏览器是否全屏无关

2、document.documentElement.clientHeight /clientWidth: 浏览器可视窗口大小(IE和FF通用):该值不受样式表制约,只会随浏览器窗口大小变化。这和document.body.clientWidth 不一样。

3、document.body.clientHeight : 文档高度(IE和FF通用):和上面一样,只是取值对象改为BODY,当BODY中无内容时,IE下为18,FF为0.当有内容时,则IE值=FF值,此值和BODY中的内容有关,是所有元素高度的总和

4、document.body.clientWidth : 文档宽度(IE和FF通用,FF会比IE取得值多2PX左右):如IE 1440,FF:1442,此值和BODY中内容无关,但和样式有关,如在样式定义body{width:98px},则此值为98,当浏览器大小改变时,如不是全屏,此值也会跟着变化。

3、document.documentElement.scrollLeft/scrollTop :页面滚动后的左侧/顶端位置(IE和FF通用)。

4、document.documentElement.scrollHeight / scrollWidth : 获取对象的滚动高/宽度(IE和FF通用但有差别) IE/FF差别在于当body总高度小于浏览窗口可见区高度时,IE的scrollHeight值为body实际高度,而FF为浏览器可见区的高度。如果body高度大于浏览器可见区,则二者没什么差别。

5、document.documentElement.offsetHeight / offsetWidth : 获取对象相对于版面或由父坐标offsetParent 属性指定的父坐标的宽/高度.(和上面功能类似且IE/FF 通用,但差别正好相反) offsetHeight是指浏览器可见区的高度,而offsetWidth是指浏览器宽度,差别在于当body总高度低于浏览 窗口可见区高度时,IE的offsetHeight值仍为浏览器可见区的高度,而FF为body实际高度。如果body高度大于浏览器可见区,则二者没什 么差别。

注、document.body.offsetHeight 和 document.body.offsetWidth :这对和上面不同,对象为body,在FF/IE下的值都是body的高和宽。不受浏览器可视区影响。

另外,当CSS有对BODY的宽做限制时,这时如果页面有一个div的宽超过这个值,则IE的document.body.clientWidth和offsetWidth等于那个DIV的宽,但FF则仍然保留CSS中对body宽界定的值。

并且要注意的是:如果没有在CSS中对body定义了 body{margin:0px;width:1239px},而这时有一个div的值超过了屏幕大小,比如1600px;那么在IE 中,document.body.offsetWidth/clientWidth或用document.documentElement等等都可以取到 body实际宽值为那个DIV的宽度,而FF则不论用什么,body值都是浏览器可视区的大小,不会按那个div的宽来计算。

这时要用document.documentElement.scrollWidth(不能用body)来做为文本的宽度测量。而浏览器的可视宽度测量用document.documentElement.clientWidth。如下:

function BrowserAndIEwidth()   {

var str2=”

bodyWidth = document.documentElement.scrollWidth   //这里不能用document.body.

BrowserWidth = document.documentElement.clientWidth

str1 = ‘ BODY的实际宽度 = ‘ +bodyWidth+’,浏览器可视宽度 = ‘+BrowserWidth

if (bodyWidth>BrowserWidth){

str2 = ‘body超过了浏览器的宽度!’

}

alert(str1+’\n’+str2);

}

//此函数在IE下当body内容未超范围时,并且用overflow=”auto”设置过后,取值会不准。

或者分开取值更好:如下函数即为取得当前页面的高度:

function(){

if (window.innerHeight && window.scrollMaxY) {   //FF

yScroll = window.innerHeight + window.scrollMaxY;

} else if (document.body.scrollHeight > document.body.offsetHeight){ //IE

yScroll = document.body.scrollHeight;

} else {yScroll = document.body.offsetHeight;}

return yScroll;

}

6、offsetLeft:获取对象相对于版面或由offsetParent 属性指定的父坐标的计算左侧位置

7、offsetTop:获取对象相对于版面或由offsetTop 属性指定的父坐标的计算顶端位置

以下仅为IE或FF部分适用:

8、window.pageXOffset/pageYOffset: 页面滚动后的顶端位置(仅FF适用,建议用document.documentElement.scrollLeft/scrollTop)。

9、window.innerWidth /innerHeight: 浏览器可视区的大小,即不含浏览器菜单、工具栏(仅FF适用,建议用document.documentElement.clientHeight),改变浏览器大小,此值也会改变

10、event.offsetY / .offsetX :(仅IE适用)光标指针相对于发生事件的对象的左上角的位置,也就是把事件发生区的DIV或TABLE等元素左上角当做坐标的0,0开始计算。

11、event.clientX / .clientY :(仅IE适用)与offsetX不同,clientX是从body窗口左上角开始计算。

12、在IE下的 event.x 等于FF中的event.pageX

13、window.scrollMaxX /window.scrollMaxY :最大可滚动的值。仅FF可用。

应用举例:

1、当body的宽度没有受CSS样式表限制时,如没有规定body{width:863px}:则

document.body.clientWidth = document.documentElement.scrollWidth

反之当有限制时,则IE的document.documentElement.scrollWidth仍然等于document.body.clientWidth,但FF则document.documentElement.scrollWidth=浏览器窗口可视区的大小,只有用document.body.scrollWidth才能相等。也可以看出两种浏览器对容器的定义不同。

 

IE browser

1 关于IE新版本的安装或更新:下载→安装→重启→配置windows update;

2 卸载:一般是通过appwiz.cpl,打开或关闭windows功能进行;