簡體   English   中英

角度-簡單的打字機效果?

[英]Angular – Simple Typewriter Effect?

已經編寫了一個漂亮的打字機指令 ,但是我正在尋找更簡單的東西,它只是在間隔后添加每個字母。 我無法使它正常工作。 它一次顯示所有文本。 $超時有問題。 有沒有人有什么建議?

var time = 1000;
var addLetter = function(i) {
    $scope.string2 = $scope.string.substr(0, i);
};
for (var i = 0, len = $scope.string.length; i < len; i++) {
    (function(time) {
        $timeout(function() {
            addLetter(i);
        }, (time + 300));
    })(i);
}

這是另一種方法。

var content = "contentcontentcontentcontentcontentcontentcontentcontentcontentcontentcontent";

$scope.type = "";
var i=0;

var timer = $interval(function(){
    if(i<content.length)
        $scope.type += content[i];
      else
        $interval.cancel(timer);

     i++; 
     $scope.$apply();
}, 100); 

信用: https//gist.github.com/frozonfreak/8018689

演示: http//plnkr.co/edit/BILaWVuNpao2zcIInXLl?p = preview

更新-這對我有用,不確定是否會更有效...

var time = 0;
var addLetter = function(i) {
    $scope.string2 = $scope.string.substr(0, i);
};
for (var i = 0, len = $scope.string.length; i < len + 1; i++) {
    time = time + 50;
    (function(time, i) {
        $timeout(function() {
            addLetter(i);
        }, (time));
    })(time, i);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM