Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > как подменить функцию


Автор: admin82 3.10.2007, 13:32
Всем привет. Такой вопрос. Есть хтмл страничка, в ней в <script language="JavaScript" type="text/javascript"> уже описана функция f(), которая повешена на некоторые события. Я могу только приписать перед </body>, в самом конце страницы, еще одну секцию <script language="JavaScript" type="text/javascript">, в которой и надо подменить эту функцию, т.е. указать ее новое тело. товарищ посоветовал так:
Код

<script type="text/javascript">
var f = new function() {
//новое содержание
    }
</script>
</body>
 

но это неверно, т.к. тогда новая функция прорабатывает сразу после загрузки страницы, а мне  надо по наступлении события, но которое повешен такой обработчик. 
Выручайте!

Автор: cruelangel 3.10.2007, 13:45
ну так и убери new

Автор: admin82 3.10.2007, 13:48
Однако, спасибо!

Автор: dsCode 3.10.2007, 13:53
admin82, во второй секции:

Код

window.f = function() { // хотя можно и var f = function() {...}
  // новое содержимое
}


Цитата(admin82 @  3.10.2007,  13:32 Найти цитируемый пост)
но это неверно, т.к. тогда новая функция прорабатывает сразу после загрузки страницы


Цитата(admin82 @  3.10.2007,  13:32 Найти цитируемый пост)
которая повешена на некоторые события


Вот слово "некоторые" здесь ключевое. Конечно, если это событие onLoad, тогда функция вызовется сразу как загрузится объект. И хоть "new", хоть не "new". Но это не значит, что созданная функция вызовется сама по себе (когда она определяется). Если это событие, например, onClick - тогда все нормально будет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)