|
|
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
К странице подгружается скрипт: Код: plaintext 1. 2. 3. 4. 5. 6. На странице есть такой код: Код: plaintext 1. 2. 3. На странице есть POST-форма, которая ссылается на эту же самую страницу. При загрузке пустой формы код страницы получается таким же, как и у исходной страницы. Проблема вот, в чем: IE6 при начальной загрузке страницы показывает два алерта с "357". Если же засабмитить форму, то первый алерт показывает 357, второй - null. Так ведет себя только IE6. Что еще интереснее - если зайти на эту страницу, затем по ссылке перейти на другую, а потом вернуться на эту страницу посредством кнопки "Назад", то все работает просто идеально - сколько форму ни сабмить с различными данными, все работает прекрасно (пока "просто" не обновишь страницу) - оба алерта возвращают 357. Такое ощущение, что когда вызывается loadMenu(), то переменная mnu носит там локальный характер. Помогите, пожалуйста, решить проблему. С уважением, Евгений ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 05:23 |
|
||
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
Заметил еще такую штуку: если поместить Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 05:34 |
|
||
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
Имею IE6, но воспроизвести Ваш баг так и не удалось - все работает отлично. Попробуйте к глобальной переменной делать полное обращение - window.mnu ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 05:49 |
|
||
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
С window работает так же, как и без него. В "чистом виде" у меня не получается воспроизвести этот баг. Там достаточно много всякого криво-написанного кода... Разобраться в нем времени потребует слишком много - реально больше, чем все переписать. Но начальство пока не хочет выделять ресурсы для переписывания, хочет только от проблемы избавиться. Пока сделал так: просто вынес переменную в исходный код страницы. Все работает. Хотя подход кривой. Как будет свободное время, все же поищу, где тут собака зарыта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 06:21 |
|
||
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
Да чего тут искать? Если функция подгружается, а вызов ее находится в основном контенте, то функция просто не видна (не определена). И ничего тут не поделаешь. Дрогое дело - зачем мы ее вызываем? - Обычно функции вызываются для реакции на какое-то событие. Так вот, если в подгружаемом блоке определить событие и либо реакцию на него, либо вызываемую функцию в этом же блоке, то все будет видно. В свое время также столкнулся с такой проблемой, но успешно ее поборол определением событий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 13:56 |
|
||
|
Объект исчезает в IE
|
|||
|---|---|---|---|
|
#18+
Попробуйте вместо алерта проверить значения другим способом, например через innerHTML некторого элемента. Тут такое дело. Если один из скриптов подгружается из js файла или оба - никто не знает какой из них отработает раньше - тот что загрузился тот и отработал. Поэтому Ваши скрипты по-разному могут вызываться. Но тут еще и алерт примешался. Алерт вызывает SUSPEND текущего скрипта и дает отработать первому попавшемуся скрипту из очереди ожидания. Поэтому и работает по-разному. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.03.2008, 20:21 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=35208663&tid=1456728]: |
0ms |
get settings: |
13ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 371ms |

| 0 / 0 |
