Помогите с этим циклом анимации - PullRequest
1 голос
/ 06 августа 2011
t.grow = function(parent,evt) { 
evt.target.Y = 0
var r = parent.radius, that = this
this.loop = function() {
    parent.root.suspendRedraw(10000)
    evt.target.Y = evt.target.Y - 6
    evt.target.setAttribute('transform', 
              'translate(' + 0 + ',' + evt.target.Y + ')')
    r = r + 0.1
    evt.target.setAttribute('r',r)
    parent.root.unsuspendRedrawAll()
     if(evt.target.Y < parent.timeout) {
        clearInterval(that.timer)
     }
}
that.timer = window.setInterval(this.loop,30) 
}
this.el.addEventListener("mouseover",
function(event){ 
    t.grow(parent,event)
},
true) 

Мне действительно нужна помощь с вышеприведенной анимацией.

В данный момент анимация запускается при наведении курсора мыши на объект, но я действительно хотел бы добиться, а не анимации.срабатывание на событие, которое я хотел бы, чтобы оно срабатывало в случайное время

1 Ответ

4 голосов
/ 06 августа 2011
function start(){
  grow()//You will need to pass in whatever element you want this to act on.
  setTimeout(function(){start()},(Math.floor(Math.random()*10)+5)*1000);
}

По существу, вторая строка создает случайное число от 0 до 10, а затем добавляет 5, чтобы у вас не было двух анимаций, работающих подряд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...