Javascript 根据元素更改隐藏样式?

Javascript 根据元素更改隐藏样式?,javascript,css,angularjs,Javascript,Css,Angularjs,现在,我有一个页面,我在不同的元素上使用了ng show和ng hide。在一些元素上,我需要可见性:隐藏!重要的这样它仍然会占用页面上的空间。在其他元素上,我需要它们通过display:none完全消失!重要的 有什么方法可以为它们设置不同的属性吗?您想创建这种指令: .directive('ngVisible', function () { return function (scope, element, attr) { scope.$watch(attr.ngVis

现在,我有一个页面,我在不同的元素上使用了ng show和ng hide。在一些元素上,我需要
可见性:隐藏!重要的这样它仍然会占用页面上的空间。在其他元素上,我需要它们通过
display:none完全消失!重要的


有什么方法可以为它们设置不同的属性吗?

您想创建这种指令:

.directive('ngVisible', function () {
    return function (scope, element, attr) {
        scope.$watch(attr.ngVisible, function (visible) {
            element.css('visibility', visible ? 'visible!important' : 'hidden!important');
        });
    };
})

关于您的用例,您将在
ng visible
ng show
/
ng hide
之间进行选择。

您可以尝试使用ng样式而不是ng show/ng hide,并有条件地将类应用于元素