我正在尝试根据用户的权限创建一个控制DOM中某些元素的指令。在网上寻找,我找到了元素的.remove()
函数。它工作得很好。
但是,如果权限发生变化,我需要再次显示DOM元素。如何在致电.remove()
后完成?
这是我的代码:
ddo.link = function(scope, el, attrs){
// Validate the permission
if( currentUserService.isAllowed(scope.validatePermission) !== true) {
el.remove();
}
// Listener for changes
$rootScope.$on("eventName", function(event, param){
// Validate the permission
if( currentUserService.isAllowed(scope.validatePermission) !== true) {
el.remove();
} else {
// SHOW THE ELEMENT AGAIN!
}
});
};
或者,是否有另一种方法可以删除de HTML并再次插入?因为使用CSS,用户可以通过开发人员控制台禁用...
提前致谢!
答案 0 :(得分:0)
而是使用.remove()
尝试使用.addClass()
和.removeClass()
添加具有display:none
的类,并在必要时将其删除。
方法.remove()
删除了显示元素,因此您无法再次显示它。
另一种选择是使用.css()
,但与其他人相比,您的处理速度较慢