2010-07-28 56 views
2

我有以下的HTML頁:javascript查找調用者div。 (或任何其他DOM對象)

<div id="a" onclick ="javascript:click();">a</div> 
<div id="b" onclick ="javascript:click();">b</div> 
<div id="c" onclick ="javascript:click();">c</div> 

現在,JavaScript函數:

function click() { 
    // how do I know if it was 'a' , 'b' or 'c' to call me 
} 

有誰知道如何找到(在每個瀏覽器),它的div是「被叫」點擊功能中的調用者?

非常感謝 埃裏克

回答

1

東西線沿線的:

JS:

function click(elem){ 
    alert(elem.id); 
} 

HTML:

<div id="a" onclick ="javascript:click(this);">a</div> 
<div id="b" onclick ="javascript:click(this);">b</div> 
<div id="c" onclick ="javascript:click(this);">c</div> 
+1

失去無效的'javascript:'標籤。 – bobince 2010-07-28 12:05:11

0

提示:

<script> 
function click(me) { 
    alert(me.id); 
} 
</script> 
... 
<div id="c" onclick ="click(this);">c</div> 
+0

的東西。 .. 3個相同的答案,大聲笑 – 2010-07-28 09:16:59

+0

謝謝。你是對的。 訣竅是通過傳遞'this'作爲參數來調用'click'方法。 優秀 – erik 2010-07-28 09:32:44

0

this作爲函數的參數:

<div id="a" onclick ="javascript:click(this);">a</div> 
<div id="b" onclick ="javascript:click(this);">b</div> 
<div id="c" onclick ="javascript:click(this);">c</div> 

這裏是功能:

function click(el) { 
    alert(el.id); 
} 

這本來是容易和不唐突與jQuery雖然:

$('div').click(function(){ 
    alert(this.id); 
}); 
相關問題