我有三個按鈕,標記爲關於我們,聯繫我們 and 服務。每當我點擊一個按鈕時,散列值將被改變,並且我已經使用路由概念去到不同的頁面。
現在,我想在AngularJS中使用函數$location.hash()
,並在哈希值更改時更改按鈕的顏色。
見我寫了下面的代碼:
<div ng-controller="mainController">
<a href = "#/aboutus" ng-class="{'active': location == '/aboutus'}">About us</a>
<a href = "#/contactus" ng-class="{'active': location == '/contactus'}">Contact us</a>
<a href = "#/services" ng-class="{'active': location == '/services'}">Services</a>
</div>
這裏的角的js代碼,我已經寫了:
app.controller('mainController', ['$scope', '$location', function($scope,$location){
var location = $location.hash();
}]);
這裏的CSS:
.active{
background-color: red;
color : white;
}
a{
padding:10px;
background-color: white;
color: black;
border: 1px solid black;
}
我不不知道代碼有什麼問題,但我無法獲得顏色,單擊時不會將類添加到標記中。
該死的,我真的忘了包括$範圍,謝謝你。我會嘗試:) – Harish
它仍然無法正常工作,要檢查它是否正常工作我使用ngclick和一個函數來執行每當按鈕被點擊時,我已經在這個函數中記錄$ scope.location。 $ scope.location的值在記錄時是空的@Maarteen – Harish
稍後我會看到我是否可以爲您提供一個工作示例。 –