Остановить JavaScript, запоминающий переменные между обновлениями страницы? (он не должен этого делать)

#javascript #css #mootools

#javascript #css #mootools

Вопрос:

У меня есть простая формулировка if-else следующим образом:

 var x = width of child div.

if(x > 165)
{
    set div width to 165px.
{
else
{
    set div width to width of child div.
}
 

Который работает в первый раз, в любое время после этого будет работать только первая часть инструкции. Неважно, переходите ли вы на другую страницу и обратно или обновляете несколько раз.

Использование Mootools 1.4.1

http://jsfiddle.net/ksR58/2 /. Меня это действительно раздражает.

Он не показывает ошибку в jsFiddle. Но это код, который я использую, при обновлении в Firefox 7 div, который содержит текст «Название заголовка». будет правильной длины, после второго обновления ширина будет 165px. Я не понимаю, как это может произойти.

Отлично работает в Google Chrome.

Обновление: я протестировал исправленную версию кода jsFiddle в отдельном проекте на моем локальном хостинге, и она работает на 100% так, как должна. Grrr…

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

1. jsfiddle.net/ksR58/3/show — кажется, все в порядке при перезагрузке страницы?

2. Testef в FF 7.0.1 — результат всегда «ширина: 155 пикселей» макс. кстати, что вы подразумеваете под «обновлением»? Перезагрузка страницы?

3. Да, обновите страницу, нажмите F5 и т. Д. Вы тестировали это в jsFiddle или Nativity в локальной файловой системе ur?

Ответ №1:

Сумасшедшая общая причина левого поля, я загружал шрифт Google с тегами в заголовке после того, как я загрузил свой CSS, javascript был запущен на странице после загрузки всего javascript, А НЕ когда DOM был готов.

Добавил window.addEvent (domready) к загрузке моего javascript, и он работает нормально. : D