javascript - 更改 div 的颜色和数字 onclick

标签 javascript jquery html css

我想在单击一个 div 时更改 html 元素的颜色和编号。 例如,当您单击 up-arrow 时,数字从 4 变为 5,并且颜色 也有变化。

initial state

↑ 4 ↓

upvoted

5

down voted

3

这是我目前所拥有的。
我知道如何在单击时更改 div 的颜色,但是我不知道如何通过单击另一个 div 来更改 div 的颜色。然后在上面添加 +1 或 -1。

http://jsfiddle.net/64QpR/23/

注意 - 用户:uneducatedguy刚问了同样的问题,但他删除了它,因为人们取笑他,因为他称它为 fiddle 而不是 jsfiddle。

最佳答案

使用 Knockout这真的很简单:

HTML:

<div class="arrow-up" data-bind="click: num.upvote.bind(num)"></div>
<h5 data-bind="text: num.value, css: { pink: num.changed }">3</h5>
<div class="arrow-down" data-bind="click: num.downvote.bind(num)"></div>

JavaScript:

function Num(value) {
    this.value = ko.observable(value);
    this.changed = ko.observable(false);
}

Num.prototype.upvote = function() {
    this.value(this.value()+1);
    this.changed(true);
}

Num.prototype.downvote = function() {
    this.value(this.value()-1);
    this.changed(true);
}

var model = {
        num: new Num(1),
}

ko.applyBindings(model);

查看实际效果:

http://jsfiddle.net/bikeshedder/UvKsz/

防止多次投票:

http://jsfiddle.net/bikeshedder/UvKsz/1/

关于javascript - 更改 div 的颜色和数字 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14572815/

相关文章:

javascript - 根据选择打印值

javascript - 通过 javascript 更改页面布局,前进,然后单击“返回”

javascript - 识别 JavaScript 中的恶意文件上传

php - 使用 php 渲染图像并使用 html <img> 标签输出

html - 0 x 0 相对 Div 仍然占用空间

javascript - 将 JavaScript 的 eval() 与多个依赖函数一起使用

javascript - 如何将字符串参数从 Angular UI 传递到 node.js 后端?

html - 表体和多个表头对齐

javascript - 如何将 .json 文件名作为参数传递给 node.js 中的命令行

jquery - 设置相对于窗口而不是父窗口的 div 宽度