您可以創建自定義指令而不是使用ng-checked,它將處理基金會的附加標記。它可能不是空閒的方式,但它會解決你的問題,因爲它知道太多關於基礎實施等
指令段從original blog post
directive('ngCheckedFoundation',['$timeout', function($timeout) {
function markCheckBox(value, scope, element, attr) {
//timeout to avoid the foundation javascript action changed by this directive
$timeout(function() {
if(value) {
attr.$set("checked", true);
element.next().addClass('checked');
}
else {
attr.$set("checked", false);
element.next().removeClass('checked');
}
}, 200);
}
function link (scope, element, attr, ctrl) {
scope.$watch(attr["ngCheckedFoundation"], function(n,o) {
if(n != o) {
markCheckBox(n, scope, element, attr);
}
});
markCheckBox(scope.$eval(attr.ngCheckedFoundation), scope, element, attr);
}
return({
link: link,
restrict: "A",
});
}])
我只需要保持複選框設計一個這樣或那樣的。 Iguess我應該告訴基金會讓他們獨處 – apneadiving