我有以下HTML結構:註冊列表項的子元素單一的點擊
<li class="is_tab" id="geometry_tab">
<a data-toggle="collapse" href="#geometry_tab_collapse">
<i class="pe-7s-plugin"></i>
<p>Geometry
<b class="caret"></b>
</p>
</a>
<div class="collapse" id="geometry_tab_collapse">
<ul class="nav">
<li class="is_tab" id="pipe_geometry_tab"><a href="#">Pipe Geometry</a></li>
</ul>
</div>
</li>
使用jQuery,我的目標是檢索點擊<li>
ID,無論用戶是否點擊li.is_tab
,li.is_tab > a
,li.is_tab > a > p
,或li.is_tab > a > i
。此外,我希望相同的事件處理程序能夠區分#pipe_geometry_tab
和#geometry_tab
之間的點擊,即當點擊其中一個或另一個時簡單地返回單個正確的ID。
我的問題是這樣的:
考慮下面的代碼片段,
$(<selector>).on("click", function(){...})
是有一個<selector>
將在li.is_tab
註冊單點擊無論它或它的a
,i
,或p
孩子被點擊?
如果不是,我將不勝感激任何關於如何去做這件事的建議。
PS我已經嘗試了很多東西,但不是與他們膨脹這篇文章,我希望更有經驗的人認爲這有一個明顯的解決方案。
稍偏離主題:通常使用選項卡的索引而不是ID或其他抽象屬性更好。最好不要將你的函數與可以改變的DOM特性緊密結合。 – isherwood