2015-12-29 33 views
0

我有這個代碼顯示ng控制器以外的內容。如何以角度從控制器js中隱藏ng控制器以外的元素?

HTML

<div class="btn-group companyName"> 
    <!-- buttons --> 
</div> 

<div class="col-lg-12 col-lg-md-12 col-sm-12" ng-controller="TopicsCtrl"> 
    <div class="faq-breadcrumbs"> 
     <!-- contents --> 
    </div> 
</div> 

JS

angular.module('sample').controller('TopicsCtrl', function ($scope) { 
    //how to hide first div? 
}; 

頂部DIV是網站的標題裏面,所以它在網站的所有網頁中。第二個div只有在FAQ頁面中才會顯示。現在,我不想讓第一個div在標題頁面上顯示。如何才能做到這一點?誰能幫我?非常感謝你。

回答

1

這樣做的角度方法是創建一個操縱DOM的指令,當路徑位於常見問題頁面上時,會隱藏頁面上的元素。爲了做到這一點,你將不得不增加你的應用程序的範圍以包含標題。

如果你不能這樣做,我會建議只是去javascript/jquery的方式,並隱藏companyName股利當位置是在常見問題。像這樣的東西可以工作。

$(document).ready(function() { 
    if(location.pathname == 'faq'){ 
     $('.companyName').css('display', 'none'); 
    } 
} 

此解決方案在文檔完全加載之前的確存在潛在顯示信息的問題。