我想让一个 div 在页面加载后 10 秒出现。我想使用角度。
<div class="appearingitem" ng-show="timeduration"></div>
任何想法我可以如何做到这一点?有没有办法在设定的时间后触发,比如说一个功能?我觉得这应该很容易,我试过用谷歌搜索,但由于我是编程新手,我不知道我在找什么
谢谢
我想让一个 div 在页面加载后 10 秒出现。我想使用角度。
<div class="appearingitem" ng-show="timeduration"></div>
任何想法我可以如何做到这一点?有没有办法在设定的时间后触发,比如说一个功能?我觉得这应该很容易,我试过用谷歌搜索,但由于我是编程新手,我不知道我在找什么
谢谢
$timeout
timeout
在这种情况下,将通过以毫秒为单位在回调中执行所需的代码来帮助您。
代码
$scope.timeduration = true; //showing some element
$timeout(function(){
$scope.timeduration = false; //hiding after 10 secs
}, 10000);
确保在使用之前应该注入$timeout
对控制器工厂函数的依赖。
angular.module('app', []).
factory('timeduration',function($timeout,$q){
var timeduration = false;
$timeout(function(){//Simulate a request
timeduration = true;
},2000);
return timeduration;
}).
controller('root',function($scope,timeduration){
$scope.timeduration = timeduration;
});
<div class="appearingitem" ng-show="timeduration">
// which you want to show here after delay
</div>
div 显示 2 秒后你可以改变你的时间,而不是你想要的 2000。
希望它对你有所帮助。
使用 $timeout 服务:
https://docs.angularjs.org/api/ng/service/$timeout
$scope.showItem = false
$timeout(function(){
$scope.showItem = true;
}, 10000); // Time in ms
尝试这个
$scope.display = function(){
$scope.timeduration=false;
$timeout(function () {
$scope.timeduration= true;
}, 10000);
}