2012-09-27 97 views
0

可能重複:
Can jQuery provide the tag name?jQuery - 檢查這個元素是什麼?

我的代碼:

$('#tab-menu a,#tab-menu li').click(function(event) { 
    event.preventDefault(); 
}); 

我需要它,這樣我可以根據被點擊了什麼,所以例如

執行不同的代碼
if(element == "li") 
//do something 
else 
//do something else 

我該如何去實現這一目標?

回答

4

使用.is()

$('#tab-menu a,#tab-menu li').click(function(event) { 
    event.preventDefault(); 

    if ($(this).is("li")) 
     // do something 
    else 
     // do something else 
}); 
3
$('#tab-menu a,#tab-menu li').click(function(e) { 
    if($(e.currentTarget).is('li') 
    ...do stuff here 
}); 
+1

爲什麼'currentTarget'而不是'this'? – epascarello

3

事情是這樣的:

if(this.tagName == "LI") //note the uppercase 

編輯:哦,是的,或者你可以使用is()。但是,如果這就是你使用的東西,不要給我信任。

+0

'tagName'是本地DOM元素的屬性,而不是jQuery對象。 –

+0

@JamesAllardice哎呀。已經有一段時間。謝謝。 –

+0

沒問題。 +1爲**最有效的答案**!當您只能訪問本地屬性時,無需再次調用jQuery。 –