2016-04-27 84 views
0

我有三個水平下拉列表,當點擊特定行時顯示站點名稱。如何讓只有一個下拉列表被點擊下拉?

但是,當我點擊一行時,所有列表都被刪除。 實際上我只想要特定的列表放下,其他人只要用戶點擊它們就可以保持不動。

如何實現這一目標?

我在這裏列出下探JS:

;(function($) { 
/* выбор города */ 
$('.lines_list').click(function(){ 
$(".stations_list").slideToggle('fast'); 
}); 
})(jQuery); 

現場演示是在這裏: https://www.metroguides.net/ru/cities/kazan-metro

非常感謝你提前。

回答

1

您正在將事件處理程序放在所有三個下拉列表中。當點擊一個,然後告訴每個".stations_list" slideToggle。

請嘗試以下代碼。這裏只應該使用$(this)來點擊元素slideToggle

;(function($) { 
/* выбор города */ 
$('.lines_list').click(function(){ 
$(this).find(".stations_list").slideToggle('fast'); 
}); 
$('ul.stations_list li').click(function(){ 
var tx = $(this).html(); 
var tv = $(this).attr('alt'); 
$(this).parent().slideUp('fast'); 
$(".lines_list span").html(tx); 
$(".lines_text").html(tv); 
}); 
})(jQuery); 
+0

感謝您的回答。不幸的是,不工作。現在,點擊時元素就會一個接一個地消失。 –

+0

我已經更新了我的答案。請試試這個。 –

+0

明白了,現在正在工作。非常感謝。我感謝您的幫助。 –