複数の s を持つページがあり、それらがクリックされたときに、それらの個々の h2s に対して異なる子要素で関数を実行できるようにしたいと考えています。私が持っているコーヒースクリプトは次のとおりです。
$("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")関数のみを実行し、その下の他の 3 つを実行しないことです。前に$(@).nextAllコードを付けずに同じ coffeescript を実行していたとき、すべての関数が機能していましたが、ページの最初の関数だけでした。