![](/img/trans.png)
[英]How can I add an css class generated by a javascript method in knockout.js?
[英]How can I add a class using Knockout JS?
我是第一次尝试淘汰赛,并通过了基础教程并查看了各种示例。
但是我自己尝试 (jsFiddle)并不能正常工作。
我要做的就是在单击“单击我”文本时将open
的类添加到div中。
我在这里想念什么?
//HTML
<div class="clickMe" data-bind="click: expand">Click me</div>
<div class="wrapper">
<div class="content" data-bind="css: {expandMenu : open}">
This is a test
</div>
</div>
//JS
function viewModel() {
var self = this;
self.expandMenu = ko.observable(false);
self.expand = function () {
self.expandMenu(!self.expandMenu());
};
};
ko.applyBindings(new viewModel());
// CSS
.content {display: none;}
.content.open {display: block;}
要在CSS绑定中使用可观察的方式来固定此开关类名称:
data-bind="css: {open : expandMenu}"
另外,可以使用css绑定是这样的格式:
data-bind="css: getClassForSomething()" // getClassForSomething must return css class (string)
和
data-bind="css: { open: isSomethingDone() }" // considering that isSomethingDone is viewmodel's method
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.