| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программное обеспечение > FF: перезагрузка страницы при встрече <img src=""> |
| Автор: Dima 2015 18.2.2009, 13:39 | ||||
| Добрый день. Не могу сказать что тема относится к РНР, но обнаружил я сее действо именно когда писал сайт на нем. Не могу сказать также, что у меня есть какие-то вопросы или проблемы, скорее просто недоумение... И вот хочу просто поделиться увиденным. Итак... Пущай есть 2 скрипта: 1.
2.
Предлагается запустить 1й, потом руками очистить (или вообще удалить) файл C:/count.txt, и затем запустить 2й. Браузер, подчеркиваю, firefox. Скрипт делает простейшую вещь - пишет строки в файл. По числу строк можно увидеть сколько раз отработал скрипт. Так вот, каково же было мое изумление, когда я увидел, что 2й скрипт отрабатывает 2 раза... Видимо когда Лис встречает пустой атрибут src у тега img, он перезагружает страницу 1 раз, авось чего отыщется : )) Повторюсь, мне в общем то нечего спросить, просто хотел поделиться... Может кто тоже об этом знает, и скажет "дык это ж известный прикол, ты не открыл америку"... Просто я 1.5 часа потратил на то, чтоб найти, в каком же месте у меня скрипт 2й раз отрабатывает, и уж естественно на такое подумать не мог. А скрипт запутанный, с кучей подключенных классов... в общем гадская штука вышла. |
| Автор: skyboy 18.2.2009, 14:07 |
| дык, это известный прикол. атрибут src, так же, как, скажем, атрибут href в <a> - это URL. который бывает относительный и абсолютный. Абсолютный - когда задается протокол, домен и путь в пределах домена. Относительный - когда задается только путь относительно корневого каталога домена или значения <base>. <img src="/images/image.gif"> - тут используется относительный URL. src="" - тоже относительный URL. Который, за отсутствием указаний, совпадают с адресом сайта или значением <base>. Т.е. на сайте http://google.com код <img src=""> будет эквивалентен <img src="http://google.com">. А вот как браузер поведет себя, когда при попытке получить содержимое картинки получит в ответ "HTTP/1.0 200 OK"(ресурс существует и доступен), а затем получит Content-Type: text/html вместо image/*, неизвестно. Firefox вот, видимо, просто переходит по указанному адресу. Что для тебя выглядит как "загрузка страницы дважды". Кто-то другой выводит "картинка отсутствует". Возможны и другие варианты. |
| Автор: Dima 2015 18.2.2009, 14:22 |
| Отано как оказывается Не очень понятно, почему же тогда ФФ вообще не зацикливается... Добавлено через 23 секунды Ну то есть, почему только 1 раз переходит, умный такой? |
| Автор: skyboy 18.2.2009, 14:23 |
| ты хотел бы получить бесконечный цикл? 0_о |
| Автор: Dima 2015 18.2.2009, 14:28 |
| skyboy, нет конечно, не хотел бы : ))) |