在click和toggle类上查找特定的div

时间:2013-10-28 15:54:50

标签: javascript jquery coffeescript haml

这是我目前的标记:

      .image_container{style: 'background-image: url(' + item['image'] + ')'}

      [...]

        .product_images_link{data: {id: item["objectId"]}}

      %form.product_info{action: "post", id: "item_#{item['objectId']}"}
        %h3.title= item['name']
        %a.remove

我有一个CoffeeScript函数可以在a.remove上切换类“.add”。我想点击此链接也可以将“未选中”类切换为“.image_container”。

我目前的功能如下:

 toggleProduct: (evt) ->
   button = $(evt.currentTarget)
   button.toggleClass 'add'
   $(evt.currentTarget).find('.image_container').toggleClass 'unselected'

如何在.image_container上找到并切换课程?

1 个答案:

答案 0 :(得分:1)

.image_container是按钮的孩子吗?如果是这样,您的代码应该可行。这是我认为你想要实现的变化:

http://jsfiddle.net/nhahV/

如果它不在按钮内,你只需要使用不同的jQuery搜索来找到它:

http://jsfiddle.net/nhahV/1/

如您所见,我正在使用$button.parent().find('img')

您还可以为其指定一个ID,并根据该按钮具有的某些属性进行切换:

http://jsfiddle.net/nhahV/2/

我在按钮中添加了data-toggle属性,其值为您要切换的ID,并使用$('#' + $button.attr('data-toggle'))选择器搜索元素。