ブートストラップ タブのディレクティブを作成して、タブを表示し、change-selection のパラメーターとして渡された URL に基づいてルートを切り替えました。
タブをクリックするたびにビューが読み込まれ、ページ全体が一番上にスクロールします。ページのスクロールを無効にしようとしていますが、何を試しても機能しません。
どんな助けでも大歓迎です。
JS コード:
var reportApp = angular.module('reportApp', [])
//Disable anchorScroll
.value('$anchorScroll', angular.noop)
.config(
['$routeProvider', function ($routeProvider) {
$routeProvider.when("/", {
templateUrl: "t1.html",
controller: 'T1Ctrl'}
)
...
}
//Directive to switch tab
reportApp.directive('changeSelection', function ($location) {
return function (scope, element, attr) {
element.bind('click', function (e) {
e.preventDefault();
$(element).tab('show');
$location.path(attr.changeSelection);
scope.$apply();
});
}
}
);
HTML:
<div id="tabContainer" class="span12">
<ul class="nav nav-tabs" id="reportTabs">
<li class="active"><a href="#" change-selection="/tendencies">Tab2</a></li>
</ul>
</div>
<div class="tab-content">
<div data-ng-view></div>
</div>