Вопрос веб девелоперам
Правила форума
Пожалуйста, ознакомьтесь с правилами данного форума
Пожалуйста, ознакомьтесь с правилами данного форума
-
- Завсегдатай
- Сообщения: 301
- Зарегистрирован: 04 май 2005, 11:33
Вопрос веб девелоперам
Почему народ не любит фреймы? Лет 10 назад браузеры не поддерживали фреймы, или отображали их некорректно. Сейчас AFAIK отключить фреймы можно только в Опере.
Задача: надо отобразить информацию (например, товары в корзине) так, чтобы она оставалась перед глазами при дальнейшей навигации по сайту. В то же время, информация должна апдейтится при добавлении товара в корзину. С фреймами можно засунуть это в фрейм один раз и не дергать БД и веб сервер. При добавлении товара перезагрузить фрейм.
Или эта проблема по-другому решается?
Задача: надо отобразить информацию (например, товары в корзине) так, чтобы она оставалась перед глазами при дальнейшей навигации по сайту. В то же время, информация должна апдейтится при добавлении товара в корзину. С фреймами можно засунуть это в фрейм один раз и не дергать БД и веб сервер. При добавлении товара перезагрузить фрейм.
Или эта проблема по-другому решается?
-
- Маньяк
- Сообщения: 4706
- Зарегистрирован: 20 янв 2005, 19:11
-
- Завсегдатай
- Сообщения: 301
- Зарегистрирован: 04 май 2005, 11:33
- Gatchinskiy
- Комбинатор
- Сообщения: 20952
- Зарегистрирован: 05 окт 2003, 20:44
- Откуда: St. Petersburg(Gatchina) > Vancouver
- Earl Grey
- Маньяк
- Сообщения: 2893
- Зарегистрирован: 22 фев 2005, 15:07
Одна из неприятных особенностей фреймов (для тех, кто консерн) это плохая индексация поисковыми системами.StS писал(а):Да я один проект на фреймах уже сделал. Просто натыкался в Интернете на темы типа "чем плохи фреймы" и "меню на CSS вместо феймов". Не знал что Gmail на фреймах.
Спасибо.
А решить проблему можно, ИМХО, используя CSS oriented design.
Например сделать динамическое наполнение div'а, позиционированного так как вам нужно.
- Earl Grey
- Маньяк
- Сообщения: 2893
- Зарегистрирован: 22 фев 2005, 15:07
- Gatchinskiy
- Комбинатор
- Сообщения: 20952
- Зарегистрирован: 05 окт 2003, 20:44
- Откуда: St. Petersburg(Gatchina) > Vancouver
-
- Завсегдатай
- Сообщения: 301
- Зарегистрирован: 04 май 2005, 11:33
[trn]Kak pri navigacii dinamicheski napolnyat' div? Dergat' bazu? Dazhe esli hranit' korzinu v sessii na servere, to veb server budet posylat' ee pri kazhdom perehode na druguju stranicu. Ya special'no vydelil [/trn][trn]ne dergat' BD [/trn][trn]i veb server[/trn]Уникурсал Уникурсалыч писал(а): А решить проблему можно, ИМХО, используя CSS oriented design.
Например сделать динамическое наполнение div'а, позиционированного так как вам нужно.
[trn]Poiskovye sistemy - ne konsern.[/trn]
- Котяр
- Маньяк
- Сообщения: 1545
- Зарегистрирован: 02 мар 2005, 13:05
- Откуда: Toronto -> Vancouver
выводи инклудом:StS писал(а): [trn]Kak pri navigacii dinamicheski napolnyat' div? Dergat' bazu? Dazhe esli hranit' korzinu v sessii na servere, to veb server budet posylat' ee pri kazhdom perehode na druguju stranicu. Ya special'no vydelil [/trn][trn]ne dergat' BD [/trn][trn]i veb server[/trn]
[trn]Poiskovye sistemy - ne konsern.[/trn]
<div>
<?php
include('whatever.inc');
?>
</div>
А если SE "не консерн", то смело используй фреймы.
-
- Маньяк
- Сообщения: 4706
- Зарегистрирован: 20 янв 2005, 19:11
Фрейм - это окно(т.е. объект window). Перезачитать в браузере можно только окно, никакой div и т.п. перезачитать нельзя.
На этом основаны технологии динамического изменния контента, типа, портлетов и gmail(забыл, как эта технология называется). В последнем случае выделяется hidden frame, который, собственно, и перезачитывается, а JavaScript управляет этими запросами.
Т.е. нужно изменить контент в ddlistbox'e. Кладем во скрытый фрейм что-то типа "....<input value='ddlb#=1, country=Russia'>...", и submit. Соответственно, скажем, сервлет это ловит, находит список городов для России и посылает клиенту. Опять же JavaScript дергает из скрытого фрейма данные и изменяет ddlistbox. Соответственно, можно резко уменьшить трафик, ускорить работу браузера, особенно, когда форма большая и ему нелегко ее перерисовывать каждый раз(как у gmail).
У меня на прошлой работе было такое приложение. Большая форма ввода, все меняется, но без перерисовки, такое впечатление, что работаешь с оконным приложением.
На этом основаны технологии динамического изменния контента, типа, портлетов и gmail(забыл, как эта технология называется). В последнем случае выделяется hidden frame, который, собственно, и перезачитывается, а JavaScript управляет этими запросами.
Т.е. нужно изменить контент в ddlistbox'e. Кладем во скрытый фрейм что-то типа "....<input value='ddlb#=1, country=Russia'>...", и submit. Соответственно, скажем, сервлет это ловит, находит список городов для России и посылает клиенту. Опять же JavaScript дергает из скрытого фрейма данные и изменяет ddlistbox. Соответственно, можно резко уменьшить трафик, ускорить работу браузера, особенно, когда форма большая и ему нелегко ее перерисовывать каждый раз(как у gmail).
У меня на прошлой работе было такое приложение. Большая форма ввода, все меняется, но без перерисовки, такое впечатление, что работаешь с оконным приложением.
-
- Маньяк
- Сообщения: 4706
- Зарегистрирован: 20 янв 2005, 19:11
-
- Завсегдатай
- Сообщения: 301
- Зарегистрирован: 04 май 2005, 11:33
-
- Маньяк
- Сообщения: 4706
- Зарегистрирован: 20 янв 2005, 19:11
- sz
- Маньяк
- Сообщения: 1266
- Зарегистрирован: 17 фев 2003, 19:34
- ajkj3em
- Маньяк
- Сообщения: 2063
- Зарегистрирован: 12 ноя 2006, 06:53