这是一个我无法让它工作的小提琴http://jsfiddle.net/mjmitche/rAPcQ/22/
我有 html 用户单击一个按钮来添加朋友的名字
<button id="add-friend">Add Friend</button>
<ul id="friends-list"> </ul>
在列表中的每个名字旁边,都有一个丰富的跨度元素?用户可以点击表明此人是否有钱
Jim [rich?]
如果用户单击跨度,我希望更改名称的颜色。我还希望跨度(即丰富?)的html改变,以便用户可以来回切换
在我看来,我创建了一个这样的事件
events: {
'click span.swap': 'swap',
},
这样当用户单击跨度时,就会调用“交换”函数。
swap: function(e) {
var spin = e.target;
var tit = $(spin).css('color');
if (tit === 'blue') {
$(spin).css('color', 'black');
$(spin).html('poor?');
} else {
$(spin).css('color', 'blue');
$(spin).html('rich?');
}
“swap”函数中的代码改变了被点击元素的css和html。它会改变
吉姆 [富有?] //最初是蓝色的
到
Jim [poor?] //'poor' 现在是黑色的
如果它已经切换过一次,然后让您能够切换。但是,“swap”函数中的代码不起作用,(即使它正在传递 jsLint)。
你能告诉我我做错了什么吗?
更新
如果您能告诉我如何更改人名的 css,则可以加分,该人名包含在同一函数中的“朋友”类中。
<span class="friend" style="color:pink">' + this.model.get('name') + '</span> <span class="swap" style="font-family:sans-serif; color:blue; cursor:pointer;">[rich?]</span>
HTML
<button id="add-friend">Add Friend</button>
<ul id="friends-list"> </ul>
这是列表元素的容器,这些元素被添加,然后通过一个主干.js 视图单独添加