запуск функции javascript при загрузке страницы

#javascript #css

#javascript #css

Вопрос:

У меня есть метод

Переключаемый редактор (this)

Это расширяет небольшой оконный компонент на моей веб-странице. У нее есть значок , при нажатии на который окно расширяется и заменяется на -.

В этом компоненте window также есть форма и некоторые параметры фильтра, которые при отправке перезагружают страницу, и поэтому при перезагрузке она отображается с нераскрытым компонентом window.

Как мне сделать так, чтобы при отправке формы окно оставалось открытым?

Ссылка идет от http://link для http://link#something когда я отправляю форму.

Ответ №1:

Что-то вроде этого подойдет

 window.onload = function() {
    if (document.location.hash === 'something') {
        someObject.toggleDrawer();
    }
};
  

Конечно, это не сработает, если у вас уже есть некоторые события, привязанные к window.onload событию. В этом случае вы можете захотеть использовать некоторую отправку событий и добавить вышеупомянутую функцию к обратным вызовам, которые будут вызываться при загрузке окна. В каждой библиотеке Javascript есть какой-то вид управления объектами. Например, в jQuery вы бы сделали

 $(window).load(function() {
    if (document.location.hash === 'something') {
        someObject.toggleDrawer();
    }
});
  

Комментарии:

1. Да, это код javascript. Здесь someObject должно быть изменено на любой объект, к которому принадлежит метод toggleDrawer . Вы не указали это в вопросе.

2. Или addEventListener соответственно. attachEvent если вы хотите решить проблему с несколькими обработчиками без библиотеки.

3. Да, я не стал вдаваться в подробности, потому что тогда вам придется позаботиться о несовместимости браузера. Я думаю, что это один из моментов, когда использование библиотеки имеет некоторые преимущества.

4. как мне определить SomeObject? Я новичок в javascript. Прямо сейчас я вызываю toggleDrawer (this) в apache velocity. Как бы я это сделал в js?

5. @SuperString: Тогда вам, вероятно, сначала следует прочитать руководство: developer.mozilla.org/en/JavaScript/Guide