我有一个带有多个 s 的页面,我希望能够在单击这些单独的 h2 时在不同的子元素上运行函数。这是我的咖啡脚本:
$("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代码的情况下运行相同的咖啡脚本时,所有功能都在工作,但仅适用于页面上的第一个。