Javascript.RU

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

Как повесить обработчик на событие load?
Firefox. Запускаю в консоли Firebug:
function f(){alert('бла 6ла')};
window.onLoad = f;

Нажимаю кнопку Обновить в браузере. Сообщение не вылезает!
Вероятно потому что страница выходит из кэша. Хотя я пытался и кэш
чистить, и страницу новую загружать. Ничего!
Пробовал и addEventListener.
А вот событие onresize работает отлично:
function f(){alert('бла 6ла')};
window.onresize = f;

Помогите зелёному. Мож надо кэш как-то чистить или другие события использовать?
Ответить с цитированием
  #2 (permalink)  
Старый 06.04.2013, 13:12
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ну тупо же. При обновлении страницы грузится новый document. А старый, вместе со скриптами улетает в небытие.
Ответить с цитированием
  #3 (permalink)  
Старый 11.04.2013, 15:21
Новичок на форуме
Отправить личное сообщение для skruks Посмотреть профиль Найти все сообщения от skruks
 
Регистрация: 06.04.2013
Сообщений: 7

А я разве на document цепляю скрипт-обработку события?! Я вроде его на window цепляю, а window остаётся старым.
Ну даже если так. Как мне тогда на окно то повешать обработчик?
Ответить с цитированием
  #4 (permalink)  
Старый 11.04.2013, 15:29
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от skruks
Я вроде его на window цепляю, а window остаётся старым.
Не остается. Все обновляется.
Сообщение от skruks
Как мне тогда на окно то повешать обработчик?
Ну хотя бы через window.onload
Только l маленькая. Ну и само собой обработчик надо навешать до возникновения события load, иначе и смысла никакого нет
Ответить с цитированием
  #5 (permalink)  
Старый 11.04.2013, 15:59
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

или выполнить функцию
function f(){alert('бла 6ла')};
window.onload = f();
Ответить с цитированием
  #6 (permalink)  
Старый 11.04.2013, 16:06
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от animhotep
или выполнить функцию
function f(){alert('бла 6ла')};
window.onload = f();
И что это даст?
С тем же успехом можно написать

function f(){alert('бла 6ла')};
f();

или
(function (){alert('бла 6ла')})();

Причем тут window.onload ?
Ответить с цитированием
  #7 (permalink)  
Старый 11.04.2013, 16:35
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

Сообщение от danik.js
Причем тут window.onload ?
не при чём)
Ответить с цитированием
  #8 (permalink)  
Старый 11.04.2013, 17:01
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

Сообщение от skruks
А я разве на document цепляю скрипт-обработку события?! Я вроде его на window цепляю, а window остаётся старым.
Ну даже если так. Как мне тогда на окно то повешать обработчик?
Вы не понимаете, как это работает. Когда вы что-то делаете с помощью JS, то оно будет работать ровно до того момента, как вы перегрузите страницу. Тогда все начинается заново. Если вам надо, чтобы ваш обработчик на onload срабатывал и после перезагрузки, так и пропишите его на странице, а не через файрбаг.
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #9 (permalink)  
Старый 28.02.2014, 13:21
Аватар для kotamirov
Аспирант
Отправить личное сообщение для kotamirov Посмотреть профиль Найти все сообщения от kotamirov
 
Регистрация: 28.02.2014
Сообщений: 45

localStorage)
Сообщение от skruks Посмотреть сообщение
Firefox. Запускаю в консоли Firebug:
function f(){alert('бла 6ла')};
window.onLoad = f;

Нажимаю кнопку Обновить в браузере. Сообщение не вылезает!
Вероятно потому что страница выходит из кэша. Хотя я пытался и кэш
чистить, и страницу новую загружать. Ничего!
Пробовал и addEventListener.
А вот событие onresize работает отлично:
function f(){alert('бла 6ла')};
window.onresize = f;

Помогите зелёному. Мож надо кэш как-то чистить или другие события использовать?
Я бы посоветовал хранить данные в localStorage, они не меняются при перезагрузке странички !
Ответить с цитированием
  #10 (permalink)  
Старый 28.02.2014, 23:35
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Сообщение от skruks
Как мне тогда на окно то повешать обработчик?
В окне не видно события load

https://developer.mozilla.org/en/docs/Web/API/Window
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS Создали div, как при создании повесить событие? фонарик Общие вопросы Javascript 5 02.03.2013 08:33
повесить обработчик на событие Ia_alex Events/DOM/Window 2 17.09.2012 14:23
Повесить событие на изменение DOM nebaz Events/DOM/Window 5 17.06.2012 15:15
Как вызвать событие после события определенного в onchange Наталья Events/DOM/Window 2 12.09.2009 13:51
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40