![]() |
Как к переменной подписать слушателя?
Как к переменной подписать слушателя?
Чтоб при ее изменении в зависимости от значения выполнялась нужная мне функция. Т.е изменилась переменная и сразу срабатывает событие и выполняется соответствующий код... Подскажите где копать или лучше пример наглядный с комментами. Смотрел что есть нечто подобное в Хелпе - зовется watch(), но ничего так и не понял. |
Создаеш обьект. В нем задаеш параметр например obj.n = 0.
Вешаеш на него watch, Код:
obj.watch('n', func, 0);Пишеш функцию Код:
function func(arg1, arg2, arg3, arg4){};- arg2 будет предидуше значение obj.n - arg3 будет новое значение obj.n - arg4 третий аргумент из watch |
Делай вызов функции в том месте кода, где изменяешь переменную...
|
to marat_sa:
Не всегда удобно вызывать функцию где изменяется переменная... Например есть модальное окно, в зависимости от возвращаемого результата мне нужно вызвать определенную функцию, как дождаться изменения переменной и в том же месте вызвать нужную функцию? to qazwsx: Спасибо, уже немного понятней... Вот только еще момент - arg1 будет n и - arg3 будет новое значение obj.n т.е они равны? зачем два одинаковых параметра? или arg1 это имя переменной? |
неужели так трудно прочитать про watch в русском хелпе?
|
Цитата:
Если нечего добавить по теме, то лучше вообще ничего не писАть! Вопрос же не ставился конкретно по watch... это как возможный вариант, и спасибо qazwsx что доступно разжевал именно этот метод... Может вообще на форуме создать правило - типа "то что есть в хелпе и Гугле даже не пытаться спрашивать - иначе растрел!" |
А про callback кто спрашивал?
Цитата:
|
to chingachgoog:
при всем уважении, но спрашивал то я не у Вас... :) или Вы в секретарях числитесь у qazwsx?... в следующий раз буду знать, чтоб к нему обратиться я это через Вас буду делать. Если кроме watch больше способов нет отследить изменение переменной, то всем спасибо, уже разобрался - вопрос можно считать закрытым. |
Mur4ik, извините, я вовсе не думал вас не только поучать, но и даже вообще как-то осуждать. Мой вопрос был более исследовательский: в данном вопросе русский хелп настолько запутан?
|
Привет!
Тоже как-то давно разбирался с watch. Вот выдержка из хэлпа: "Метод; регистрирует обработчик события, вызываемый в случае, когда свойство объекта изменяется" В приведеном коде в последней строке значение просто переприсвоино, но watch срабатывает. Код:
var myObject:Object = new Object(); |
| Часовой пояс GMT +4, время: 14:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.