我正在構建一個Chrome擴展,並且需要能夠在類show_review
的第一個表上執行click()
。我遇到的問題是這些鏈接都具有相同的類,沒有ID。選擇具有類屬性的一系列元素中的第一個元素
這裏是我試圖單擊有多個表都具有相同的類:
<table cellpadding="0" cellspacing="0" class="show_review" onmousemove="csmd1(this)" onmousedown="csmd2(this)" onclick="adOpen(this,1,317543,'680536')" msm="1" msc="1"></table>
這裏是我的代碼。重新加載時,它不會執行任何操作。只是坐在那裏沒有點擊。
if ($(".show_review")[0].length){
$(".show_review")[0].click();
}
你肯定當你觸發點擊事件時,這些元素的存在?也許你需要使用DOM準備事件?看到我的更新。 – gdoron 2012-03-21 23:05:07
當您使用數組訪問器時,您會將實際的dom元素從jQuery集合中取出,而'.eq(n)'會爲您提供一個包含位置'n'處的元素的jQuery集合。所以:'$('。show_review')[0] .length'是一個很糟糕的情況,因爲你可能只想測試'$('.show_review').length'然後'$('.show_review')[0 ] .click()'應該是'$('。show_review')。eq(0).click()'。最後,由於在空集上執行任何函數都可以使用jQuery,所以你甚至不需要首先檢查。 – nickf 2012-03-21 23:11:29