IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   непрекращающаяся загрузка сайта в firefox (http://www.imho.ws/showthread.php?t=107025)

chernikov 14.08.2006 15:01

непрекращающаяся загрузка сайта в firefox
 
Всем привет.
Проблема такая:
Есть всплывающее окно, содержимое которого генерируется javascript. Содержимое простое - одна картинка. Все работает замечательно, но в firefox после открытия и загрузки картинки в строке состояния показано, что страница загрузилась не до конца, и что идет активная загрузка с сайта. При этом никакие данные через сетевую карточку не передаются...
Отсюда вопрос: как сделать так, чтобы firefox эту постоянную загрузку не показывал?
В других броузерах (IE, Opera, Safari) все нормально...

uerter 14.08.2006 15:13

писать ява скрипт код специально для firefox так как не все что работает в других браузерах работает в firefox. Я лично с таким явлением сталкивался!

chernikov 14.08.2006 16:20

спасибо, конечно, за подсказку... НО коды елательно писать универсальные... Тем более, если код самы простой, например:
Цитата:

<html>
<head>
<title></title>
<script>
function f(){
тут идет скрипт по изменению размера окна в зависимости от размера картинки
}
</script>
</head>
<body onload="f()">

<img src="mypic">
</body>
</html>
вот этот код выводится в новое окно через javascript, то firefox показывает, что он что-то откуда-то грузит и грузит и грузит...

другая проблема - вложенный скрипт размер окна не меняет... Точнее не так: у меня на локальной машине под ie и opera меняет, а под firefox - не меняет. Когда же все все страницы расположены на сервере, то вложенный скрипт по изменению размеров окна не срабатывает вообще. Отсуюда я заключаю, что такие вложенные скрипты не работаю, я прав?

/7y3uK 14.08.2006 17:17

все должно работать, скрипт в студию...

ПыСы
по поводу постоянной загрузки - это могут быть глюки самого файрфокса. Возможно сервер, который отдает картинку не пишет в респонз статус, что все ОК. Я бы забил на это, т.к. не влияет ни на что...

chernikov 15.08.2006 07:10

Цитата:

function newWin (number) {
var bigImage = window.open('','bigImage','height=300,width=300,status=0,menubar=1,loc ation=0,resizable=1,directories=0,toolbar=yes,scrollbars=yes');
bigImage.document.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head><title>image</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><link href="style.css" rel="stylesheet" type="text/css" /><script type="text/javascript" src="resize.js"></script></head><body onload="window_onload()"></body><div align="center" id="fig"><img src="' + bigImages[number].src + '" /></div></html>')
bigImage.focus();
}
содержимое скрипта resize.js
Цитата:

function window_onload()
{
var doc = document.getElementById("fig");
var doc2 = document.getElementById("fig2");
var w = document.body.offsetWidth;
var h = document.body.offsetHeight;
if(doc){ w = doc.offsetWidth+100; h = doc.offsetHeight+150;}
if(doc2){ w += doc2.offsetWidth;}
if((doc2)||(doc)){window.resizeTo(w,h);}
}
так вот, этот код работает абсолютно нормально на локальной машине в IE и Opera. В firefox не ресайзится окно.

при размещении всего этого хозяйства на сервере под IIS 5 (winXP) или red hat linux перестает работать ресайз окна во всех броузерах. А firefox начинает выдавать, что страница грузится до бесконечности...

P.S. Проблема приобрела теоретический характер. Изначально была задача из готовых скриптав сляпать что-то с минимальными затратами. Починка проблем стала занимать много времени и от этого пришлось отказаться. Переписал скрипт и теперь все работает. Но все-таки хотелось бы выяснить, в чем проблема, чтобы не наступать дважды на одни и те же грабли...

Hatifnatt 15.08.2006 15:55

С ходу могу сказать вот что:
Цитата:

var w = document.body.offsetWidth;
var h = document.body.offsetHeight;
if(doc){ w = doc.offsetWidth+100; h = doc.offsetHeight+150;}
if(doc2){ w += doc2.offsetWidth;}
if((doc2)||(doc)){window.resizeTo(w,h);}
это все в Лисе работать не будет, особенно это касается выделенного жирным, это поддерживается только ишаком (ну может сейчас и Оперой) и это вне стандартов W3C впрочем почти все остальное тоже, к сожалению написать по быстрому работающий вариант не могу, времени нет. :idontnow:

chernikov 15.08.2006 19:06

понятно... просвятили...
Но вот какое дело... сейчас я переделал страницу, она не генерируется на javascript полностью, а просто в нее передается имя картинки, которое надо отображать. И в этом html документе вставлен скрипт, который изменяет размер окна. В этом случае все работает, и в лисе, и в опере, и в сафари... Почему я и поставил вопрос, может, просто вложенные скрипты не работают?

Hatifnatt 15.08.2006 20:35

Нда лоханулся я конкретно, впрочем не ошибаетс тот кто ничего не делает :)
А вообще работаю прекрастно вложенные скрипты, впрочем у тебя то скрип не совсем вложеный, сначала генериться страница и только потом запускается скрипт. Так что все тоже должно быть окейно. Возможно скрипт ресайза в лисе запускался до того как завершал работу предыдущий и из за этого отображался индикатор загрузки.

chernikov 16.08.2006 13:23

может быть. Но дело в том, что в лисе вообще ничего не ресайзилось...


Часовой пояс GMT +4, время: 00:42.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.