2011-08-10 49 views
1

我有一個父函數div的列表,每個都有一個onclick函數。運行第一個div點擊

我該如何創建一個函數來獲取第一個div並運行onclick函數?

重要的是,我的div可以排序。所以在排序後,「第一個div」可能不再是第一個,所以我需要定義一個函數,每次當窗口準備就緒時,我會運行一次,在div被排序後,我再次運行它。

謝謝!

編輯:OK,說這裏是我的代碼,我會根據id這些div排序:

<div id="e"> 
<div id="e1" onclick="$(this).siblings().removeClass('someclass').addClass('someclass')">Something</div> 
    <div id="e2" onclick="$(this).siblings().removeClass('someclass').addClass('someclass')">Something</div> 
    <div id="e3" onclick="$(this).siblings().removeClass('someclass').addClass('someclass')">Something</div> 
    <div id="e4" onclick="$(this).siblings().removeClass('someclass').addClass('someclass')">Something</div> 
    <div id="e5" onclick="$(this).siblings().removeClass('someclass').addClass('someclass')">Something</div> 
</div> 
+1

請提供一些代碼,以便我們更好地爲您提供幫助。 – evasilchenko

+0

爲什麼使用內聯事件偵聽器?爲什麼不爲所有這些div添加一個類,並在JavaScript中附加事件監聽器,因爲你似乎對所有這些事情都做了同樣的事情。此外,在你的情況下,很容易找到並跟蹤第一個div,它是ID爲'e1'的div(即'var $ firstDiv = $('#e1');' – Shef

+0

排序,我的意思是我會所以id e5可能是第一個/ – Henry

回答

0

使用代表與first選擇器。

$("divsContainer").delegate("div:first", 'click', function(){ 

}); 

注:指定divsContainer合適的選擇實際上是所有這些div都存在的contianer。

0

使用jQuery選擇頁面上所有的div(或任何容器containting這些排序中申報單)。這會給你一個數組。拿第一個元素,它將是第一個div。

0

你的意思是這樣的嗎?

$('#idOfParentDiv div:first').click(); 
+0

,它會得到頁面中的第一個div,如果有更多的內容,可能是任何東西 – Einacio

+0

是的,但由於缺乏任何代碼,我沒有不要把任何其他的選擇器放在那裏,我會認爲這很明顯,選擇器應該被縮小:)我已經編輯了我的答案,以使它顯而易見 –

0
$('#parent div:first-child').click(); 
相關問題