如何觸發按鈕單擊setTimeout或$超時。現在,即使我把它放在按鈕點擊函數中,它也會自動執行,它不會等待點擊事件觸發它。
$scope.btnClick = function() {
setTimeout(function() {
$scope.close();
}, 1000)
}
如何觸發按鈕單擊setTimeout或$超時。現在,即使我把它放在按鈕點擊函數中,它也會自動執行,它不會等待點擊事件觸發它。
$scope.btnClick = function() {
setTimeout(function() {
$scope.close();
}, 1000)
}
angular.module('app',[]).controller('mainCtrl',['$scope',function($scope){
$scope.btnClick = function() {
setTimeout(function() {
$scope.close();
}, 1000)
};
$scope.close = function(){
console.log("done");
};
}]);
<!DOCTYPE html>
<html ng-app="app">
<head>
<link rel="stylesheet" href="style.css">
<script src="https://code.angularjs.org/1.4.0/angular.js"></script>
<script src="script.js"></script>
</head>
<body ng-controller="mainCtrl">
<button ng-click="btnClick()">Do</button>
</body>
</html>
這裏是超時工作的一個片段。 這裏是plnkr http://plnkr.co/edit/7ZS5TTnCb50nbgBuXqj1?p=preview
使用$超時,而不是setTimeout和使用$範圍。$適用()在 「$ scope.close()」 函數。
注意:如果您想查看UI中的更改,可以在函數中使用$ scope。$ apply()。使用console.log()不能證明它正確的話;)
從我的理解,你有一個按鈕,如下所示:''我已經在按鈕所在的控制器中獲得了這個功能。這可能是不對的,你能否在問題中澄清一下? –
你想在jquery的'onclick'事件被觸發後調用這個函數嗎? –