当前一个 url 不同时更改 ng-init 值

change ng-init value when previous url is different

我想在从指定页面加载当前页面时将 ng-init = "tab=1" 更改为 ng-init = "tab=2"http://191armyband.com/career.html。这可以通过使用 jQuery?
的条件函数来实现吗 我已经使用 document.referrer 得到了之前的 url。这是我的 fiddle:

http://jsfiddle.net/humorean/g2aaxc0e/4/

你的问题不会得到好的答案,因为你的方法全错了。

你应该坚持使用你已经注释掉的控制器,而不是使用 jquery onready 的东西。然后在你的控制器中根据你的逻辑将 "tab" 属性 设置为你想要的。

去阅读 angular 应用程序的基础知识,并尝试从中学习而不是用 jquery

来破解你的前进道路

这是 javascript 代码,我使用并使用了 ng-controller 而不是 ng-init 来让它工作:

// declare a module
var contactModule = angular.module('contactModule', []);
contactModule.controller('panelCtrl',function(){
var prevUrl = document.referrer; //set prevUrl equal to the previous url that loads current page

if(prevUrl === "http://191armyband.com/career.html"){ //test if previous url was career.html
this.tab =2; //If previous url that loads this page is career.html then ng-init = tab 2
} else{
this.tab =1; //If previous url that loads this page is NOT career.html then ng-init = tab 1
};

this.selectTab = function(passInTab){
this.tab = passInTab; //SET this.tab value equal to whichTab where  html can PASS IN a passInTab value
};

this.isSet = function(chosenTab){
return this.tab === chosenTab;  //return this.tab value when this.tab value equal to chosenTab
};

});

这是HTML

<body>
<div data-role="page">
<div class="navigatorTab">
<ul id="mainUl" class="nav nav-tabs">
<li ng-class="{active:panel.isSet(1)}"><a href ng-click="panel.selectTab(1)">General Inquery</a></li>
<li ng-class="{active:panel.isSet(2)}"><a href ng-click="panel.selectTab(2)">Request For Audition</a></li>
<li ng-class="{active:panel.isSet(3)}"><a href ng-click="panel.selectTab(3)">Request The Band</a></li>
</ul>     
</div>
<div id="generalInquery" ng-show="panel.isSet(1)">
<h3 class="contactHeader">Contact Us:</h3>    
</div>

<div id="Audition" ng-show="panel.isSet(2)">
<h3 class="contactHeader">Request for Audition:</h3>
</div>

<div id="requestBand" ng-show="panel.isSet(3)">
<h3 class="contactHeader">Request The Band:</h3>
</div>
</div>
</div></body>
</html>