1 / 1 / 0
Регистрация: 13.05.2009
Сообщений: 244
|
|
1 | |
Можно ли отобразить другой URL не перезагружая страницу?01.06.2010, 07:06. Показов 3685. Ответов 12
Метки нет (Все метки)
Фреймовый сайт.
В строке URL всегда типа: http://myServer.com/index.html А мне надо отобразить текущую страницу фрейма, отобразить адрес: http://myServer.com/history.html Это для того, чтобы юзер мог добавить конкретную страницу в избранное. Как бы это сделать?
0
|
01.06.2010, 07:06 | |
Ответы с готовыми решениями:
12
Как отправить форму, не перезагружая страницу? Обновление материала каждые 10 секунд не перезагружая страницу Сабмит формы не перезагружая страницу Как можно записать данные в сессию не перезагружая страницу? |
4 / 4 / 3
Регистрация: 25.05.2009
Сообщений: 2,576
|
|
01.06.2010, 10:07 | 2 |
менять путь в строке адреса скриптом нельзя
0
|
85 / 61 / 69
Регистрация: 15.03.2007
Сообщений: 6,906
|
|
01.06.2010, 11:27 | 3 |
В каждую страницу с полезным содержимым добавляем код JavaScript проверяющий наличие необходимой фреймовой структуры, и если она отсутствует, то скрипт вызывает location.replace() с адресом вида
/index.html?url=/history.html (для случая когда обращение идет к файлу history.html, где index.html это файл с элементами frameset). index.html должен создать правильную структуру фреймов с учетом переданного ему параметра url. Это можно делать серверным скриптом (предпочтительный метод) или JavaScript-ом (разбор window.location, затем document.write). Чтобы в адресной строке всегда был правильный адрес ссылки на полезное содержимое надо ставить так: <a href='/index.html?url=/history.html'>history.html</a> Что очень неудобно когда страниц много, или так: <a href='/history.html' target='_top'>history.html</a> Что приведет к замедлению загрузки из-за дополнительногг редиректа. Выбор за вами P.S. Возможно имеет смысл задуматься так ли вам нужны фреймы.
0
|
1 / 1 / 0
Регистрация: 13.05.2009
Сообщений: 244
|
|
01.06.2010, 13:37 [ТС] | 4 |
Вот спасибо! Помогла конструкция:
Код
<a href='history.html' target='_top'>О компании</a>
0
|
1 / 1 / 0
Регистрация: 13.05.2009
Сообщений: 244
|
|
01.06.2010, 13:47 [ТС] | 5 |
Э, нет! Редирект-же происходит... а мне этого как раз и не надо. Не проходит номер.
0
|
85 / 61 / 69
Регистрация: 15.03.2007
Сообщений: 6,906
|
|
01.06.2010, 14:36 | 6 |
Объясните подробней что вы хотите сделать?
0
|
kettle
|
|
01.06.2010, 15:43 | 7 |
Alex!
А может тебе сделать ссылку, для добавления в фавориты? <a href='' onClick='window.external.AddFavorite('http://yandex.ru', 'Add this site'); return false;'>Add favorite</a> |
1 / 1 / 0
Регистрация: 13.05.2009
Сообщений: 244
|
|
01.06.2010, 15:57 [ТС] | 8 |
Проблема в том, что при моем варианте сайта, как я уже говорил, в адресной строке постоянно один и тот же URL, который ссылается на index.html невзирая на то, какая страница загружена в основной фрейм (в моем случае Frame2). Пользователь, при попытке добавить страницу (естественно ту, которая во Frame2) в избранное - получает ссылку на index.html. Вот я и хотел, чтобы в адресной строке отображался URL страницы, загруженной во Frame2. Редирект не проходит, потому, что во Frame1 хранятся значения переменных, которые при этом теряются.
Пока вижу 2 пути: 1 создание PHP сессий и тогда редирект пойдет (это дело будующей, но нескорой переработки сайта), 2 - вставить свой скрипт добавления страницы в избранное (а если пользователь воспользуется не моей кнопкой, а меню браузера?). Так, что пока эти пути меня пока не устраивают. Хотелось быстро побороть то, что есть.
0
|
85 / 61 / 69
Регистрация: 15.03.2007
Сообщений: 6,906
|
|
01.06.2010, 16:42 | 9 |
Сложный случай. Получается что один фрейм всегда должен оставаться в неизменном состоянии. Проблема явно в изначальном планировании. Такое надо заранее продумывать. В качестве временного решения поможет решение kettle c AddFavorite (работает, кстати, только в MSIE). А в качестве постоянного - надо полностью сайт переделывать. На том же PHP, например.
0
|
kettle
|
|
01.06.2010, 19:09 | 10 |
А если другой вариант?
По onUnLoad записываем в cookie информацию на какой странице был пользователь, а в index, если есть cookie делаем редирект |
kettle
|
|
01.06.2010, 19:12 | 11 |
Там же, в cookie можно сохранить и другие переменные из frame
|
85 / 61 / 69
Регистрация: 15.03.2007
Сообщений: 6,906
|
|
01.06.2010, 19:12 | 12 |
Мысль интересная, но посетитель далеко не всегда захочет возвращаться на ту же страницу где он был в последний раз.
0
|
1 / 1 / 0
Регистрация: 13.05.2009
Сообщений: 244
|
|
02.06.2010, 07:04 [ТС] | 13 |
У пользователя может быть запрещена работа с cookie. Это тоже не выход.
Согласен с bazile, надо видимо сайт переделывать, а пока временное решение с AddFavorite. А насчет изначального планирования... тут основным критерием была скорость загрузки страниц, а то зайдешь на некоторые сайты и при переходе по страницам... ну некрасиво это смотрится. В моем варианте устраивает буквально все, за исключением вот этой маленькой неприятности с адресной строкой, точнее с добавлением в избранное. Огромное спасибо всем за советы.
0
|
02.06.2010, 07:04 | |
02.06.2010, 07:04 | |
Помогаю со студенческими работами здесь
13
К2 отобразить в категории содержимое статьи не перезагружая страницы Вывести записи, соответствующие выбранному товару, из бд, не перезагружая страницу Надо вывести на asp страницу значения name, так, что при нажати на них происходила пересылка на страницу с соотвествующим значением url. Сколько можно добавить URL адресов в свою созданную Группу URl? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |