PDA

Просмотр полной версии : setInteval передача аргументов


Lorex
14.03.2004, 04:15
написал:



Object.prototype.typing = function (txt, x,y)
{ trace("in typing");
this.createTextField("_tx", 500, x, y, 300, 20)
this._tx.text=txt;
this._tx.border=true;

}
//первьій сетІнтервал меняєт значение глобальной переменной
b = setInterval (function(){ _global.xa++; trace(_global.xa)},500);
// Второй - вьізбівает функцию печати и передает переменную
a = setInterval ( typing , 500, "This si No"+xa,100,100 )


-- НЕ РАБОТАЕТ - даже текста не показьівает.. но функция typing откликивается...(видно по trace("in typing"); )


а вот пишу


....
b = setInterval (function(){ _global.xa++; trace(_global.xa)},500);
a = setInterval ( function () { typing ("This si No"+xa,100,100) }, 500 )



теперь работает....ПОЧЕМУ?!!!

llllllllll
14.03.2004, 04:57
Object.prototype.typing = function (txt, x,y, id)
{
trace(this); // !!!
this.createTextField("_tx", 500, x, y, 300, 20)
this._tx.text=txt;
this._tx.border=true;
clearInterval(id);
}

setInterval (this, "typing", 500, "Hello World!",100,100, 1); // метода объекта
setInterval (typing, 500, "Hello World!",100,100, 2); // анонимная хункция

llllllllll
14.03.2004, 05:04
Да на счет анонимности (или хрен знает как это назвать) this - так работать будет ;)

function typing(txt, id){
createTextField("_tx", 500, 100, 100, 300, 20)
_tx.text = txt;
_tx.border = true;
clearInterval(id);
}

setInterval (typing, 500, "Hello World!", 1);

Lorex
14.03.2004, 05:24
опять пути....
Сенкс.....

Великий путь Флешера!.... :-)