JS中常见的兼容
Posted wu0379
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS中常见的兼容相关的知识,希望对你有一定的参考价值。
1.阻止事件冒泡
e.stopPropagation() || e.cancelBubble
function stopBubble(e){ if (e.cancelBubble) { e.cancelBubble = true; }else{ e.stopPropagation(); } }
2.获取非行间样式
getcomputedStyle() 参数1:当前对象 参数2:伪类选择器,通常不会使用,用false代替
currentStyle() 语法:对象.current[attr]
function getStyle(obj,attr){ //获取非行间样式,obj是对象,attr是值 if(obj.currentStyle){ //针对ie获取非行间样式 return obj.currentStyle[attr]; }else{ return getComputedStyle(obj,false)[attr]; //针对非ie } }
3.获取className节点的元素
function elementsByClassName(node, className){
var res = [];
//查找node所有的子节点
var nodes = node.getElementsByTagName("*
");
for(var i = 0; i < nodes.length; i++){
if(nodes[i].className == className){
res.push(nodes[i]);
}
}
return res;
}
4.target事件属性
var target = e.target || window.event.srcElement
5.事件中兼容性问题
var e = event || window.event
6.scrollTop滚动条距离和clientWidth
var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; var windowWidth = document.documentElement.clientWidth || document.body.clientWidth;
7.事件监听器
非IE: oDiv.addEventListener(‘click‘,fn,false);
oDiv.removeEventListener r(‘click‘,fn,false);
IE下: oDiv.attachEvent(); oDiv.detachEvent();
8.阻止默认事件
e.preventDefault();
window.event.returnValue = false;
if(e.preventDefault){ e.preventDefault(); }else{ window.event.returnValue = false; } return false;
9.键盘事件
var eve = eve || window.event
var keyC = eve.keyCode || eve.which
以上是关于JS中常见的兼容的主要内容,如果未能解决你的问题,请参考以下文章