我有一个包含mutliple的页面,我希望能够在点击它们时将不同子元素的函数运行到那些单独的h2s。这是我的coffeescript:
$("h2").click ->
$(@).nextAll('#data').toggle("blind")
$(@).nextAll('.c1').toggleClass("minsize")
$(@).nextAll("#datacontainer").toggleClass("datacontainer")
$(@).addClass("showtext")
这是我正在使用的相关HTML结构(在haml中,这是Rails应用程序的一部分):
#clipboard
%ul.clipmenu
-@snapshots.each do |snapshot|
%li.clip.c1[snapshot]
= image_tag snapshot.attachment.url
#datacontainer.c1
%h2= snapshot.default_name
#data.c1{:style => "display:none"}
%textarea
%p Some text
问题是这只会运行 $(@)。nextAll('#data')。toggle(“blind”)功能,而不是其下面的其他三个功能。当我在前面没有 $(@)。nextAll 代码的情况下运行相同的coffeescript时,所有功能都在运行,但仅适用于页面上的第一个。