2016-05-12 52 views
0

我正在使用名爲intro.js的角度js插件。它可以發現here。當用戶點擊演示按鈕以便我可以顯示下拉項目的一些介紹步驟時,我想要做的就是打開一個下拉菜單。這裏是我的html:角度應用已在進行中

<body ng-controller="MainCtrl as ctrl"> 
    <div ng-intro-options="ctrl.IntroOptions" 
     ng-intro-method="ctrl.CallMe"> 
      <div class="container"> 
       <button class="btn btn-success" 
       ng-click="ctrl.startHelp()">Help</button> 
      </div> 
    </div> 
</body> 

而我的JS:

MainCtrl.prototype.startHelp = function() { 
    var _this = this; 
    angular.element('#drop-down-button').trigger('click'); 
    _this.CallMe(); 
}; 

我也試過

angular.element('#drop-down-button').click(); 

但同樣的錯誤。介紹工作很好,如果我刪除angular.element線。但是,包括我在內,我得到了this error。任何想法如何解決這個問題?

+0

你可以嘗試用類似的setTimeout換你點擊這個代碼'的setTimeout(函數(){angular.element( '#下拉按鈕')觸發器( '點擊');},200) ;' – Akis

+0

@Akis_Tfs哈哈你和我同時來到同一個解決方案 – Richard

+0

哈哈大聲笑是的,這是相同的確切時間! – Akis

回答

1

我只是把呼叫包裝在一個超時。

MainCtrl.prototype.startHelp = function() { 
    var _this = this; 
    _this.$timeout(function() { 
     angular.element('#drop-down-button').trigger('click'); 
    }, 0, false); 
    _this.CallMe(); 
}; 
相關問題