問題描述:在html頁面中點擊<a>或者’按鈕‘,進入js中的函數,在js函數中獲得被點擊那個<a>或‘按鈕’元素
解決方法:
方法一:
html中:
<a>標簽:<a id="21" href="javascript:void(0);" onClick="fun(event)">點擊我</a>
按鈕:<input type="button" value="點擊我" onClick="fun(event)"/>
js中:
function fun(event){
var obj=event.srcElement; //event在ie中自帶有,可以不用傳入,其他少數瀏覽器需要傳入
alert(obj.innerHTML);
}
方法二:
html中:
<a>標簽:<a id="21" href="javascript:void(0);" onClick="fun(this)">點擊我</a>
按鈕:<input type="button" value="點擊我" onClick="fun(this)"/>
js中:
function fun(obj){
alert(obj.innerHTML);//此處obj就對應html頁面中的<a>
}
總結:其實二者唯一差異就是傳入參數問題,方法一中,event.srcElement顧名思義就是獲取事件的源元素,但是不能javascript:fun(event);這樣寫,這樣只是跳轉到了對應函數,而根本就沒產生事件,也就獲取不到事件源元素
ps:事件中的函數切記不能與系統函數同名,否則達不到預期效果
