我在主干中有一个悬停事件:
事件:
'mouseover .1_select' : 'hover'
'mouseover .2_select' : 'hover'
然后我尝试在已经“悬停”的元素上更改相同的CSS值...
hover: (e) ->
$(this.el).css('background-position' : '0px -40px')
我需要做的是接受事件“e”并从中找到我们已经悬停过的元素并仅更新那个元素。
目前我可以看到自己每个班级写出两次这个功能,但我不想这样做 - 感觉很乱。例如,类更改但我需要更改的属性和值保持不变。
答案 0 :(得分:1)
使用$(e.currentTarget)
代替$(this.el)
来修改事件绑定到的事件的当前目标元素。感谢jQuery currentTarget在浏览器中进行了规范化,您不必担心任何事情:)
您可以使用this.$el
而不是$(this.el)
Backbone 0.9
来保存内存并保持代码清洁