Постоянно работающий JavaScript? - PullRequest
0 голосов
/ 07 февраля 2010

Как я могу постоянно запускать мой код JavaScript? Ситуация такова, что я хочу, чтобы некоторые элементы страницы были изменены при изменении размера страницы. Я думаю, что способ сделать это состоит в том, чтобы иметь некоторый код javascript, который постоянно работает, и всякий раз, когда размер страницы изменяется, он изменяет размер этого элемента.
Я попытался сделать это с помощью setTimeout () и действительно небольшого значения, но, похоже, это не сработало.

Ответы [ 3 ]

6 голосов
/ 07 февраля 2010

JavaScript - это язык, основанный на событиях, то есть вы добавляете слушатели событий к вещам, а затем вызывается функция, когда происходит это событие. Это избавляет вас от непрерывного запуска цикла и проверки состояния элемента.

Окно поддерживает onResize в JavaScript, например:

window.addEventListener("resize", function(event){
  alert("you just resized the window. If you inspect the event variable you will find some usefull details");
}, false);
5 голосов
/ 07 февраля 2010

http://www.quirksmode.org/dom/events/index.html#t020

Вы должны подключить ваш скрипт к событию изменения размера

1 голос
/ 07 февраля 2010

Я бы посмотрел на фреймворк, такой как jquery, где вы можете зарегистрировать функцию с событием страницы.

$('body').resize(function() { ... });

Запуская javascript все время, вы рискуете сильно затормозить процессор (особенно в одноядерных системах) и реально замедлить работу браузера.

...