事件冒泡机制 //事件委托 冒泡机制 document.getElementById("tableId").onclick = function(event){ //IE doesn't pass in the event object event = event || window.event;
//IE uses srcElement as the target var target = event.target || event.srcElement; alert(target.id + " " + target.innerHTML + " " + target.style.backgroundColor); };给你表格 绑定一个事件,然后....
window.onclick = function() { var obj = document.getElementById('myTable').getElementsByTagName('td'); for (var i = 0; i < obj.length; i ++) obj[i].onclick = function() { alert(this.innerHTML); } }alert(this.innerHTML);这个换成alert(obj[i].innerHTML)为什么不行呢,一定要this?
<!DOCTYPE HTML>
<html id="test">
<head>
<meta charset="gb2312" />
<title></title>
<style>
</style>
</head>
<body>
<table>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</table>
<script>
var $ = function(id){
return document.getElementById(id);
};
var $t = function(tag, cot){
cot = cot || document;
return cot.getElementsByTagName(tag);
};
var obj = $t('td');
for(var i = 0, len = obj.length; i < len; i++){
obj[i].onclick = function(){
alert( this.innerHTML )
}
}
</script>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
window.onclick = function() {
var obj = document.getElementById('myTable').getElementsByTagName('td');
for (var i = 0; i < obj.length; i ++) obj[i].onclick = function() {
alert(this.innerHTML);
}
}
</script>
</head><body>
<table width="200" border="1" id="myTable">
<tr>
<td>R1C1</td>
<td>R1C2</td>
<td>R1C3</td>
</tr>
<tr>
<td>R2C1</td>
<td>R2C2</td>
<td>R2C3</td>
</tr>
<tr>
<td>R3C1</td>
<td>R3C2</td>
<td>R3C3</td>
</tr>
</table>
</body>
</html>
e=e||event;
var obj=e.target||e.srcElement;
if(obj && obj.tagName=="TD"){
alert(obj.innerHTML);
}
}
$("table tr td").click(function(){
alert($(this).html());
});
</script>
//事件委托 冒泡机制
document.getElementById("tableId").onclick = function(event){
//IE doesn't pass in the event object
event = event || window.event;
//IE uses srcElement as the target
var target = event.target || event.srcElement;
alert(target.id + " " + target.innerHTML + " " + target.style.backgroundColor); };给你表格 绑定一个事件,然后....
var obj = document.getElementById('myTable').getElementsByTagName('td');
for (var i = 0; i < obj.length; i ++) obj[i].onclick = function() {
alert(this.innerHTML);
}
}alert(this.innerHTML);这个换成alert(obj[i].innerHTML)为什么不行呢,一定要this?
因为这个function是obj[i]的成员函数,名字叫onclick。