Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2010, 17:26
Новичок на форуме
Отправить личное сообщение для reserved100 Посмотреть профиль Найти все сообщения от reserved100
 
Регистрация: 01.07.2010
Сообщений: 2

Как совместить window.onload от 2 скриптов?
Такая проблема, два скрипта на странице используют дополнительно window.onload -
(window.onload = function() {
.......
})
соответственно срабатывает только тот, что прописан ниже. Нельзя ли как-нибудь совместить их, чтобы сработали обе функции?
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2010, 17:29
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Переписать. addEventListener/attachEvent
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2010, 17:48
Новичок на форуме
Отправить личное сообщение для reserved100 Посмотреть профиль Найти все сообщения от reserved100
 
Регистрация: 01.07.2010
Сообщений: 2

Извините, ничего не понял, что переписать?

Я пробовал такой вариант, нашел в интернете

window.onload = func;
func2.prev = window.onload;
window.onload = func2;

function func() {
onload от одного скрипта
}

function func2() {
onload от второго скрипта
this.onload.prev();
}

Но срабатывает только 1 функция onload, которую я прописал тут - function func2() {
onload от второго скрипта
this.onload.prev();
Ответить с цитированием
  #4 (permalink)  
Старый 01.07.2010, 18:02
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

http://javascript.ru/tutorial/events/comparison
Ответить с цитированием
  #5 (permalink)  
Старый 01.07.2010, 20:53
Аватар для chippolino
Аспирант
Отправить личное сообщение для chippolino Посмотреть профиль Найти все сообщения от chippolino
 
Регистрация: 24.04.2010
Сообщений: 79

Это имеется ввиду?
window.onload = (function(){
	func1();
	func2();
});
Ответить с цитированием
  #6 (permalink)  
Старый 09.07.2010, 16:39
Новичок на форуме
Отправить личное сообщение для Yamazl Посмотреть профиль Найти все сообщения от Yamazl
 
Регистрация: 08.07.2010
Сообщений: 2

Когда хочется добавить пару своих маленьких функций в событие onload действительно легче сделать как chippolino, чем добавлять обработчики кросбраузерно как в http://javascript.ru/tutorial/events/crossbrowser . Вот когда дорастут скрипты до библиотеки тогда можно и о кросб. добавлении подумать.
Ответить с цитированием
  #7 (permalink)  
Старый 09.07.2010, 16:47
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Yamazl,
вы так об этом говорите, будто использование addEventListener/attachEvent что-то сложное и требующее фреймворков.
Ответить с цитированием
  #8 (permalink)  
Старый 09.07.2010, 17:13
Новичок на форуме
Отправить личное сообщение для Yamazl Посмотреть профиль Найти все сообщения от Yamazl
 
Регистрация: 08.07.2010
Сообщений: 2

Kolyaj, Упорно углубляюсь в js примерно неделю, поэтому addEventListener/attachEvent в кросбраузерном решении в 111 строчек для меня хоть и посильно, но: при добавлении функции в 15 строчек в событие можно обойтись и как chippolino.

У меня есть плохая привычка — не использовать сторонние скрипты, пока до глубины души не пойму что в них происходит. Делаю сайты без jQuery и подобных и php движек свой... Знаю, идиот.

А addEventListener/attachEvent я использовать БУДУ, попозже, чрезе недельку.

Ну что мне ответить, нет, не сложное, сам использовать буду. Просто если человек совсем начинающий можно "обойти" как chippolino, пусть криво зато работает везде.
Ответить с цитированием
  #9 (permalink)  
Старый 09.07.2010, 17:42
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Функция кроссбраузерного добавления обработчика событий занимает 4 строки. А можно и в одну уложиться. Но это для эстетов
node[/*@cc_on'attachEvent'||@*/'addEventListener'](/*@cc_on'on'+@*/'click', myfunction, false);
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 21:24
Как включить отладку скриптов в IE uonax Internet Explorer 0 15.06.2010 20:03
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 09.02.2010 00:00
Как совместить работу onmouseover, onmouseout и onclick Sed0Y Общие вопросы Javascript 11 11.08.2009 15:59
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20