1.兄弟节点
.nextElementSibling谷歌、火狐、IE9以上等其它浏览器认识的
.nextSibling是IE6,7,8认识的
var li = one.nextElementSibling || one.nextSibling;
2.scrollTop和scrollLeft
谷歌和没有声明<!DOCTYPE>的认识document.body.scrollTop
火狐和其他浏览器认识document.documentElement.scrollTop
IE9和最新浏览器认识window.pageYOffset
function scrollTop() {
if(window.pageYOffset != null) {// IE9及以上和其它高版本的浏览器
return {
left:window.pageXOffset,
top:window.pageYOffset
}
} else if(document.compatMode == "CSS1Compat") {
// 检测是否是怪异模式的浏览器,怪异模式也就是没有声明<!DOCTYPE html>的,如果进入到该循环,说明是声明了<!DOCTYPE html>
return {
left:document.body.scrollLeft,
top:document.body.scrollTop
}
}
return {// 剩下的肯定是怪异模式
left:document.documentElement.scrollLeft,
top:document.documentElement.scrollTop
}
}
3.检测屏幕宽度(可视区)
IE9及以上版本:window.innerWidth
标准:document.documentElement.clientWidth
怪异模式(没有声明<!DOCTYPE>):document.body.clientWidth
function client() {
if(window.innerWidth != null) { // IE9及以上的
return {
width:window.innerWidth,
height:window.innerHeight
}
} else if(document.compatMode == "CSS1Compat") {//标准模式的
return {
width:document.documentElement.clientWidth,
height:document.documentElement.clientHeight
}
}
return { //怪异模式的
width:document.body.clientWidth,
height:document.body.clientHeight
}
}
4.寻找点击事件的id值
IE6,7,8 event.srcElement.id
其它: event.target.id
event.target ? event.target.id : event.srcElement.id;
5.获得用户选择内容
标准浏览器:window.getSelection()
IE: document.selection.createRange().text;