[英]Trying to convert jQuery calls to knockout.js
我有一些代码需要从jQuery调用转换为kickout.js语法。 我一直在尝试所有内容,而且完全被炸了。 啊!
我要完成的任务的快速概述:单击链接之一后,我需要运行toggleButton敲除功能(效果很好),但是除此之外,我还需要单击一下以使“活动”类有效”,然后删除所有其他链接以删除“活动”类。
有问题的HTML:
<div class="topnav" id="myTopnav">
<a href="#" id="all" class="active" data-bind="click: toggleButton.bind($data,'All')">All</a>
<a href="#" id="child" data-bind="click: toggleButton.bind($data,'Children')">Children's</a>
<a href="#" id="indie" data-bind="click: toggleButton.bind($data,'Independent')">Independent</a>
<a href="#" id="spir" data-bind="click: toggleButton.bind($data,'Spiritual')">Spiritual/Religious</a>
<a href="#" id="trad" data-bind="click: toggleButton.bind($data,'Traditional')">Traditional</a>
<a href="#" id="univ" data-bind="click: toggleButton.bind($data,'University')">University</a>
<a href="#" id="used" data-bind="click: toggleButton.bind($data,'Used')">Used</a>
</div>
有问题的.js:
function setActive(elem) {
// Remove active class from any current element that has it.
for (var u=0; u < elem.length; u++) {
if (elem.hasClass("active")) {
elem.removeClass("active")
}
}
// Add active class to the clicked item
$(event.target).addClass("active");
}
setActive($('#myTopnav').children());
试试那个。 这比较简单。
$(document).ready(function(){
$("a").click(function(){
$(this).addClass("active");
$("a").not(this).removeClass("active");
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.