为了得到所点击的的单元格的位置
我调用了var row = this.parentNode.rowIndex; 这些火狐和chrome都可以,但是在IE中就显示this.parentNode.rowIndex' 为空或不是对象
上网查了资料,说是
“
当html中节点缺失时,IE和火狐对parentNode的解释不同,例如
<form>
<table>
<input/>
</table>
</form>
火狐中input.parentNode的值为form, 而IE中input.parentNode的值为空节点”
上面这个例子哪里有节点缺失?为什么this.parentNode.rowIndex' 为空或不是对象 ,请多多指教javascript
我调用了var row = this.parentNode.rowIndex; 这些火狐和chrome都可以,但是在IE中就显示this.parentNode.rowIndex' 为空或不是对象
上网查了资料,说是
“
当html中节点缺失时,IE和火狐对parentNode的解释不同,例如
<form>
<table>
<input/>
</table>
</form>
火狐中input.parentNode的值为form, 而IE中input.parentNode的值为空节点”
上面这个例子哪里有节点缺失?为什么this.parentNode.rowIndex' 为空或不是对象 ,请多多指教javascript
<html>
<head>
<meta charset="gbk" />
<title></title>
<style> </style>
</head>
<body>
<form>
<table>
<tr>
<td></td>
<td><input onclick="test(this)" /></td>
<td><input onclick="test(this)" /></td>
</tr>
<tr>
<td></td>
<td><input onclick="test(this)" /></td>
<td><input onclick="test(this)" /></td>
</tr>
</table>
</form>
<script>
var test = function(t){
alert( t.parentNode.parentNode.rowIndex )
};
</script>
</body>
</html>dom 要完整
function getEventTarget(){
var event = window.event || arguments.callee.caller.arguments[0];
var target = event.srcElement ? event.srcElement : event.target;
return target;
}
得到target对象,再用target对象取代DOM2级事件处理函数中的this就可以了