Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как динамически изменять содержимое страницы?  (Прочитано 22055 раз)
0 Пользователей и 1 Гость смотрят эту тему.
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« : 02-04-2004 09:42 » 

Как подгрусить в Ifarme новую страницу я уже знаю. Теперь задачки посложнее...

Цитата
<table width="67"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td colspan="3"><img src="LogoR.jpg" width="133" height="79" /></td>
      </tr>
      <tr>
        <td colspan="3"><img src="Shtok.jpg" width="510" height="9" /></td>
      </tr>
      <tr>
        <td width="400">&nbsp;</td>
        <td id=GGG width="85" height="46" align="center" valign="top" background="Flag.jpg"><span>Клуб </span></td>
        <td width="25">&nbsp;</td>
      </tr>
    </table>


Вот пример кода странички

Вопрос как заменить содержимое между двумя тегами?
например
я хочу заменить
<span>Клуб</span>
На
<span>Форум</span>

или вообще перестроить всю таблицу
полность заменив все содержимое между тегами
 <table>..... </table>

Пример пожалуста
Записан

Да да нет нет все остальное от лукавого.
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 02-04-2004 09:50 » 

Вопрос номер два
У меня есть желание отображать странички по списку в основном дизайне
используя IFARAME, это у меня уже работает.
Но есть необходимость попутно отображать в разных частях страницы дополнительную информацию связаную с этой страницей.
очень хотелось бы хранить  эту инфомацию в нутри самой страницы отображаемой в IFRAME.

Например в предыдущем посте я спрашиал как замеить надпись на флаге, теперь мне нужно в место произвольной надписи поместить на флаг название страницы отображаемой в IFRAME
Как это сделать?
 пример пожалуйста
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #2 : 02-04-2004 10:16 » 

PSD, решается примерно так, как предполагалось решать предыдущую задачку. RXL еще меня поправил (я в ваших трехбуквиях скоро путаться начну Улыбаюсь).
Код:
<script>
function ono() { document.getElementById("span1").innerHTML = "Пишу что хочу !"; }
</script>
<span name="span1" id="span1">Типа</span><br>
<input type="button" value="Нажми" onclick="javascript:ono();">
Вся таблица может быть помещена внутри span'a и пиши что хочешь.

Я так понял, флаг расположен на родительском документе ?
Для того, чтобы надпись на флаг поместить сообразно с названием, надобно в функцию, которая грузит в IFRAME нужную страницу, вставить строку из функции примера.
« Последнее редактирование: 25-11-2007 16:14 от Алексей1153++ » Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 02-04-2004 11:13 » 

Цитата

Для того, чтобы надпись на флаг поместить сообразно с названием, надобно в функцию, которая грузит в IFRAME нужную страницу, вставить строку из функции примера.

Логично, вопрос втом как получить нужную информацию, сейчас   у меня
скрипт обрабатывает конструкцию вида
index.htm?t=welcom.htm
Приэтом  welcom.htm будет подставлен в IFRAME  без анализа (не очень красиво зато просто), тепепрь мне нужно выташить из welcom.htm строку(например название страницы) и поместить его при помощи innerHTML в нужное мне место.
Вопрос как можно пометить эти данные в докумете welcom.htm и как их потом извлечь при помощи скрипта в находящегося докумете index.htm
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #4 : 02-04-2004 11:40 » 

PSD, ну ты барин, задачи ставишь... Мож, RXL что умное предложит, но я до понедельника точно пас, там со свежей головой посмотрю Улыбаюсь
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 02-04-2004 11:49 » 

На сегодня умные мысли кончились... Пиво!
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Anonymous
Гость
« Ответ #6 : 02-04-2004 20:41 » 

А! озадачил я вас)))
Записан
Skubent
Гость
« Ответ #7 : 06-04-2004 11:25 » 

PSD, Вот, понедельник по техническим причинам был пропущен, зато смотри что получилось в результате размышлений:
Основная страница:
Код:
<HTML>
 <HEAD>
  <TITLE>test</TITLE>
 </HEAD>
 <BODY>
  <BR>
<span id="id1">Тут будет реклама</span><br>
  <IFRAME ID="frame"></IFRAME>
<SCRIPT>
function SetID1(param)
{
document.getElementById('id1').innerHTML = param;
}
mystr = document.URL;
tmp = mystr.substring(mystr.indexOf('?')  + 1, mystr.lenght);
document.getElementById('frame').src = tmp + '.html';
</SCRIPT>
 </BODY>
</HTML>
Дочерняя номер раз)
Код:
<script>
top.SetID1("Внизу вы видите первую дочернюю страницу.");
</script>
Содержание сей страницы не поддается никакому анализу :).
Дочерняя номер два)
Код:
<script>
top.SetID1("Внизу вы видите вторую дочернюю страницу.");
</script>
Содержание сей страницы просто, как куриное яйцо.

Ты еще не прекратил издеваться над самим собой ?
php или Perl удобнее для таких вещей Улыбаюсь
« Последнее редактирование: 25-11-2007 16:16 от Алексей1153++ » Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 06-04-2004 12:12 » 

Так так фактически мы обявляем в родительском документе функцию ... а в дочернем ее вызываем ?  Здорово раскрываются невообразимые горизонты...

Но у меня почемуто не получилост с
Цитата

mystr = document.URL;
tmp = mystr.substring(mystr.indexOf('?')  + 1, mystr.lenght);


Почемуто ругалось на indexOf  и когда я это безобразие в отладчике цеплял там вообще не было indexOf в списке методов объекта

Я пока сдела так
Цитата

mystr = document.location;  
tmp=mystr.search


Но эта конструкция  не работает на 5 версии ....
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #9 : 06-04-2004 12:40 » 

эээ... Вообще-то indexOf для строковых объектов еще в IE4.0 точно определено было. И, кажется, даже раньше.

Ты же говорил, что у тебя конструкции
Код:

index.html?foo.htm

уже работают ?
Записан
Skubent
Гость
« Ответ #10 : 06-04-2004 12:48 » 

PSD, и о горизонтах - ты не забывай, что ты все утяжеляешь документы... Модемные пользователи вешаться будут Улыбаюсь
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 07-04-2004 04:49 » 

Skubent, ты очем ?
Несколько строчек кода не намного утежелят документ, и при отработке SetID1
перезапроса документа не происходит....
Помоему это экономней в смысле трафика, чем пересобирать страницу на сервере и тащить ее к пользователю заново или  я что то не не так понимаю?
Цитата

Ты же говорил, что у тебя конструкции
Код:

index.html?foo.htm


уже работают ?

Совершенно верно но обнаружились глюки на 5 версии ехплорера виражающиеся в том что в ифрейм грузится не foo.htm а
index.html?foo.htm  получается такой не хилый саморазворачивающисй каскадец....  Жаль
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #12 : 07-04-2004 06:35 » 

PSD, я о том, что каждый span на странице требует своей функции и при более-менее насыщенной структуре страницы получишь примерно 50% контента - функции JScript, что, как мне кажется, не есть гуд.

Слухай, у меня под рукой сейчас нет 5-го ослика, поэтому попробуй сие:

Код:
<script>
tmp = document.URL;
alert(tmp);
alert(tmp.indexOf("."));
</script>

Вообще-то работает на мозилке и нетскейпе...
« Последнее редактирование: 25-11-2007 16:22 от Алексей1153++ » Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #13 : 07-04-2004 08:39 » 

Если стакой точки зрения подходить то да.....

Но мне это пока не гразит, эта задача не подразумевает такое количество динамически изменяемых объектов .... чтоб это сильно сказалось на весе странички...
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #14 : 07-04-2004 09:38 » 

PSD, так что у тебя получилось-то ? indexOf не работает ?
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #15 : 07-04-2004 11:52 » 

Сейчас не возможности на месте проверить... когда отлаживал выбивало ошибку "ожидается объект"  и дебагер не видел среди свойсв объекта tmp,indexOf
но это только если я брал
  document.location
с
 document.URL
все работало но там помоему мне возвращали не всю строку
http://shelek.com/forum/viewtopic.php?p=51858#51858
а только путь к документу
http://shelek.com/forum/viewtopic.php

сегодня еще раз посморю повнимательней...
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #16 : 08-04-2004 06:02 » 

PSD, document.URL возвращает все, что есть в адресной строке браузера.
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #17 : 19-04-2004 04:43 » 

Код:
SCRIPT LANGUAGE=JAVASCRIPT TYPE="TEXT/JAVASCRIPT">
mystr = document.location;
tmp=mystr.search
if (tmp=='') { document.location=mystr+'?t=welcom.htm' ;
document.getElementById('PSDTEXTFRAME').src = 'welcom.htm';
}
else {
document.getElementById('PSDTEXTFRAME').src = tmp.substring(3,tmp.lenght);
}
</SCRIPT>


Вот такой код у меня сей час в работе, все великолепно но
вот эта вешь не поддерживается в старых браузерах
Код:
tmp=mystr.search

Пытаюсь изменить на
Код:
tmp=mystr.indexOf("?")
Стабильно получаю, ошибку "Ожидается наличие объекта"

Пробую заменить везде
document.location
на
document.URL
Все замечательно работает до тех пор пока я не пытаюсь занести новый адрес в URL, наличие этой строки
document.URL=mystr+'?t=welcom.htm'
вызывает зацикловку с постоянным реботом страницы...

Есть ли вариант куль турно разрулить эти грабли?


Попутный вопрос как я понимаю в этом случае
mystr = document.location;
mystr = document.URL;
происходит не копирование текстовой строки с адресом а чтото похожее на передачу ссылки на объект. Так?
А нельзяли явно  прописать что мне нужна от document.location только текстовая строка и ничего больше?
« Последнее редактирование: 25-11-2007 16:24 от Алексей1153++ » Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #18 : 19-04-2004 06:40 » 

PSD, document.URL - атрибут только для чтения. Объект mystr после mystr=document.URL; имеет тип string, так что вроде как все, что тебе надо и получается.

А зачем тебе вообще в URL что-то свое класть ? То есть переходы по ссылкам вроде и так должны работать...

А что касается indexOf... У тебя насколько старый браузер ? Возможно, string он еще воспринимает как простой массив, а не объект, но это ж как давно было Улыбаюсь.
Записан
PSD
Главный специалист

ru
Offline Offline
Пол: Мужской

« Ответ #19 : 20-04-2004 04:14 » 

Броузер у меня 6

Цитата

А зачем тебе вообще в URL что-то свое класть ? То есть переходы по ссылкам вроде и так должны работать...

Для едино образия....
Можно и без него ....
А как тогда из скрепта сделать редирект на другую страницу?
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #20 : 20-04-2004 06:28 » 

Редирект ? Ежели по действию пользователя, то ссылкой
Код:
<a href='трам-парам'>ссылка</a>,
а ежели автоматически, то
а) запихнуть в заголовок страницы
Код:
<meta HTTP-EQUIV="Refresh" CONTENT="время в секундах; URL=куда идти">
Работает, соответственно просто - через указанное время перенаправляет страницу по указанному адресу.
б)
Код:
window.open("куда идти", "_self");
Открывает в текущем окне куказанный адрес.
« Последнее редактирование: 25-11-2007 16:26 от Алексей1153++ » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines