2016-03-07 120 views
0

我想隱藏所有以前的元素,這是在.map-page元素之前。Angular2兄弟元素選擇器

我正在加載離子應用程序,如果在dom上檢測到.map-page,我需要隱藏以前的頁面。

image

在jQuery中這是如此的簡單$('.map-page').siblings().hide(),但在角2 ..我不知道它的作用是用來做。

回答

-2

由於您正在遍歷dom,因此建議您使用指令。裏面你的指令,你有機會獲得$元素

EX:

app.directive('hide-siblings', function() { 
    return { 
     link: function($scope, $element, $attrs) { 
       $element.siblings().hide() 
     }, 
    } 
}); 

編輯:也就是說只有當你有jQuery和也可能不是最好的辦法。這可能是更好的這個指令添加到您的所有元素,並使用:

app.directive('hide-siblings', function() { 
    return { 
     link: function($scope, $element, $attrs) { 
      if(!$element.hasClass('map-page')) 
       $element.hide() 

     }, 
    } 
}); 
+3

他說他是用角2,但你的解決方案是具有角1。 – Sunder