previousSibling会返回某节点之前紧跟的节点(同级目录)
没有返回null
使用方法为
this.previousSibling
下面是实例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
function aa(s){
var ss = s.previousSibling;
// console.log(ss);
//此处会读取textnode,比如回车符.空格,显示的文字。。
//元素节点的节点类型是 1
while(ss &&ss.nodeType != 1){
console.log('The node is :'+ss);
ss = ss.previousSibling;
}
console.log(ss.value);
}
</script>
</head>
<body>
<input id='in' type="text">
<input type="button" value="GO" οnclick="aa(this);">
</body>
</html>
IE 会忽略节点间生成的空白文本节点(例如,换行符号),而 Chrome,Mozilla(其余浏览器未测试) 不会这样做。