2012-03-06 61 views
2
<div onclick="showCustomerResultsTable();" 
class="csq-tab ui-state-default ui-corner-top" 
id="customers-tab">Customers</div> 

<div onclick="showParcelJourneySummary();" 
class="csq-tab ui-state-default ui-corner-top ui-state-active" 
id="order-journey-summary-tab">Status History</div> 

使用JavaScript我怎麼能檢查其中哪一個有UI狀態活躍起來,因爲我需要一個if語句來檢查是否UI狀態活躍是在狀態激活歷史和做一些事情。如果語句來找出在JavaScript類

+2

你願意/能夠使用Javascript框架,如[jQuery](http://jquery.com)嗎? – 2012-03-06 15:51:02

+0

不知道我有哪個版本 – ahmet 2012-03-06 15:53:01

+2

從類名中可以看出,您已經在使用jQuery UI了。 jQuery應該已經在您的處置...不是嗎? – 2012-03-06 15:55:43

回答

2
var statusHistory = document.getElementById('order-journey-summary-tab'); 

if(statusHistory.classList.contains('ui-state-active')) { 
    // do stuff 
} 

,或者如果您有jQuery的

if($('#order-journey-summary-tab').hasClass('ui-state-active')) { 
    // do stuff 
} 
2

你可以使用jQuery的hasClass()

否則,您需要檢查元素w/plain ol'JavaScript的className屬性。

3

這可以很容易地用新的HTML5 API班級列表來檢查:

document.getElementById('customers-tab').classList.contains('ui-state-active'); 
// Will return true if element has class 

否則,你將不得不使用舊的方式:

document.getElementById('customers-tab').className.indexOf('ui-state-active') != -1; 
// Will return true if element has class 

我會推薦usi但在jQuery中的hasClass()屬性!