$(document).on("click", ".toggle-row-handler", function(event) {
var $this = $(this),
parent = $this.closest("tr");
$this.toggleClass("active"), parent.next().toggleClass("open")
})
如何在角度js中实现此代码片段,因为我必须切换单击css。
答案 0 :(得分:0)
使用Angular,您可以使用ng-click指令侦听HTML元素上的click事件,并使用ng-class IE动态设置类:
<table ng-click="triggerFunction()" ng-class="class"></i>
所以在控制器中你可以有一个设置类变量的函数:
$scope.changeClass = function( element ){
if (element .class === "inactive")
element.class = "active";
element.parent.class = "open";
else
element.class = "inactive";
element.parent.class = "closed";
};
现在如何将元素绑定到它们的类变量实际上取决于实现。由于看起来你正在处理一个表,也许你有一个存储在这个表中的数据数组,使用ng-repeat设置它来生成行。
以下是一个假设的例子: https://jsfiddle.net/pWG2S/1050/
注意:我的示例假定表格不会重新排列,并且将始终按阵列的顺序显示。如果您要使用其他Angular功能(例如允许更改或过滤订单),则可能不再适合用例。 (假设用例是更改元素的类,以及直接在上面的元素。)