![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| fridkaratel |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
В-общем... при установке интервала через setInterval каким бы не был объект, this всегда будет window, т.е.:
В данном случае, this.value будет undefined, т.к. this указывает на window. Возникла идея сделать что-то такое:
Но постоянно приходится указывать и функцию, и объект, что, как мне кажется, кривовато... Можно ли узнать как-то объект, которому принадлежит функция? Пытался получать ее через arguments[0], но выводится тело функции, а не ее название... Какие есть варианты? Это сообщение отредактировал(а) fridkaratel - 6.1.2010, 14:08 |
||||
|
|||||
| Amphiluke |
|
|||
|
☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 35 Всего: 112 |
Это сообщение отредактировал(а) Amphiluke - 6.1.2010, 14:58 |
|||
|
||||
| fridkaratel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
Таким образом не подходит, т.к. при вызове происходит eval...
|
|||
|
||||
| Amphiluke |
|
|||
|
☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 35 Всего: 112 |
||||
|
||||
| fridkaratel |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
При таком вызове (когда параметр в виде строки кода) происходит eval, чтобы вызвать функцию...
В некоторых случаях, eval может блокироваться из-за соображений безопасности... Например, в разного рода приложениях типа Mozilla Prism... Или Adobe Air.. ;) Поэтому такой вариант попросту не работает |
|||
|
||||
| Amphiluke |
|
|||
|
☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 35 Всего: 112 |
Ну ладно. :(
А нечто эдакое не подходит?
|
|||
|
||||
| segrey |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 26.12.2006 Репутация: нет Всего: нет |
|
|||
|
||||
| fridkaratel |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 221 Регистрация: 22.10.2007 Где: Error connect to MySQL Da... Репутация: нет Всего: нет |
@Amphiluke:
Не совсем то, что хотелось бы... @segrey: Я так и делаю в данный момент, но хотелось бы как-то удобней сделать, так сказать, расширить... Например, проблема ведь не только при создании интервалов, но и вот, например:
Хотелось бы упростить запись, чтобы не путаться... ну как-то так:
Это сообщение отредактировал(а) fridkaratel - 6.1.2010, 19:08 |
||||
|
|||||
| segrey |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 26.12.2006 Репутация: нет Всего: нет |
Всё же this сендера перекрывать - тоже не вариант, он может понадобиться в обработчиках событий.
Можно к MyOBJ везде обращаться. Либо если боитесь рефакторинга, задать псевдоним для this как описали выше. Мне нравится такое решение:
Это сообщение отредактировал(а) segrey - 6.1.2010, 21:04 |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |