代碼意圖:點擊 .stopdetail 切換顯示同級/子級 .serlist_bd_station_jingting,但點擊無反應。
$('.stopdetail').click(function() {
$('.serlist_bd_station_jingting', this).toggle(300); // 錯誤:this 是 .stopdetail 元素
});
$('.serlist_bd_station_jingting', this) 表示**在 this (即 .stopdetail) 內部查找** .serlist_bd_station_jingting。.serlist_bd_station_jingting 是 .stopdetail 的**兄弟元素** (同屬 li.serlist_bd_station 下),非後代 → 找不到 → toggle 無效果。$(this).siblings('.serlist_bd_station_jingting').toggle(300);$(this).closest('li').find('.serlist_bd_station_jingting').toggle(300);$('#uniqueId').toggle(300);$(function() {
$('.serlist_bd_station_jingting').hide();
$('.stopdetail').click(function() {
$(this).siblings('.serlist_bd_station_jingting').toggle(300);
// 或 $(this).closest('li').find('.serlist_bd_station_jingting').toggle(300);
});
});
$(selector, context) ≡ $(context).find(selector):**僅搜索後代**。.siblings()、**.closest()** 是處理同級/祖先關係的標準工具。console.log($(this).siblings(...).length) 驗證選中數量。移除錯誤的 this 上下文參數,改用 siblings() 或 closest().find() 即可恢復切換功能。