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

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

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

« : 22-03-2004 11:19 » 

Эксперементирую с великим гипертекстом.
Слепил дизайн на таблицах ракидал по периметру графику в центе болшая ячейка хочу делать 2 вещи
1) Выводить туда разный текст , например опираясь  то в какой пункт меню кликнет пользователь.

2)Если текст не помещается в ячейке ячейка не должна расширяться ломая таблицу а должен появляться скролбар.

Как это реализовать?
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #1 : 22-03-2004 13:53 » 

2. Размеры ячейки задать строго параметрами width и height соответственно.

1.
а) перерисовывать всю страницу целиком. В зависимости от клика пользователя.
б) воспользоваться конструкцией вроде такой:
Код:
<html>
<body>
<script>
function do1()
 {
 pole.innerHTML = 'AAAAAAAAAA';
 }
function do2()
 {
 pole.innerHTML = 'BBBBBBBBBB';
 }
</script>
<span id=pole>
Тут будут буквы
</span>
<input type=button onClick=javascript:do1() value='А'>
<input type=button onClick=javascript:do2() value='В'>
</body>
</html>
в) использовать тег IFRAME.
« Последнее редактирование: 25-11-2007 14:59 от Алексей1153++ » Записан
RXL
Технический
Администратор

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

WWW
« Ответ #2 : 22-03-2004 20:05 » 

Skubent, твой пример может на IE и работает, но на других браузерах не хочет. Лучше будет так:
Код:
 function do1() { document.getElementById("pole").innerHTML="aaaaaa"; }
 function do2() { document.getElementById("pole").innerHTML="bbbbb"; }
« Последнее редактирование: 25-11-2007 15:01 от Алексей1153++ » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
PSD
Главный специалист

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

« Ответ #3 : 23-03-2004 06:07 » 

В общем понятно но в этом случае я так понимаю не получится делать внешние ссылки на варианты страницы . те если перключение по разделам сайта будет сделано именно так то  пользователь всегда будет начинать работу с главной страницы....

Как дать ему возможность запоминать нужню страницу в  избраное ?  
Я так понимаю что в этом случае должны обрабатываться конструкции вида
http://shelek.com/forum/viewtopic.htm?t=2797

Как это делается?
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #4 : 23-03-2004 07:24 » 

RXL, да, возможно, но getElementbyXXX пока не внесены в стандарт, то есть под каждый брузер надо писать свою функцию, а это тема отдельного разговора.

PSD, если хочешь добалять страницы в избранное, тогда тебе надо формировать страницы на основании GET запросов с параметрами, то есть вида
http://что-то-там/index.html?page=theme1
и так далее, а по анализу сих переменных уже формировать отдаваемую юзеру страницу.
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #5 : 23-03-2004 07:56 » 

Skubent, document.getElement* является ф-ией DOM и работает на уже давольно старых браузерах. Включен в IE5 (если верить книгам).
DOM, imho, более логичный и наглядный метод работы с DHTML.

Немного не согласен с утверждением "под каждый брузер надо писать свою функцию" - это не отдельный, это вечный разговор. Пользователь не должен страдать из-за пристрастий программиста. Всегда должна быть альтернатива, пусть и не такая красочная и функциональная, как браузерозависимый код. :!: Пример тому - параметер ALT тега IMG - если пользователь не может увидить катринку, то хоть понять что на ней изображено он должен.

И прошу всех: не используйте document.all - эта конструкция работает только на IE! Горы скриптов, написанные для IE, не работают на других браузерах. Зачастую программисты не затрудняют себя проверками и действуют по принципу "у меня же работает". Любой клиентский web-скрипт следует проверять на различных браузерах и, желательно, не только последних версий.

Извиняюсь за офтопик - наболело - устал бороться с кривыми сайтами...
--------------->8---------------->8---------------
Цитата
Я так понимаю что в этом случае должны обрабатываться конструкции вида
http://shelek.com/forum/viewtopic.htm?t=2797

Как это делается?
PSD, эта ссылка идет на 404 not found - ты это имел ввиду? Или ты о GET?

Кстати, возвращаясь к теме: скролбар в таблице не появится никогда, а вот в TEXTAREA будет.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Skubent
Гость
« Ответ #6 : 23-03-2004 10:08 » 

RXL, в том-то и дело, что DHTML до сих пор не прописан как общепринятый стандарт.
Я прекрасно понимаю твое отношение - сам иногда страдаю Улыбаюсь,  в общем, как я и говорил, использование скритов на страницах требует аккуратности... И отдельного разговора для каждой конструкции.
А пример - он пример и есть, не надо от него требовать полнофункциональности Улыбаюсь
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #7 : 23-03-2004 11:04 » 

Skubent, совершенно согласен по части полнуфункциональности, но работоспособность должна быть.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Skubent
Гость
« Ответ #8 : 23-03-2004 11:57 » 

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

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

« Ответ #9 : 23-03-2004 12:36 » 

RXL,
Да я про GET(теперь я знаю как это называется).

Что это такое и как с этим работать?

Цитата

Кстати, возвращаясь к теме: скролбар в таблице не появится никогда, а вот в TEXTAREA будет.

Я вышел из пложения IFRAME.

Skubent,
Цитата

RXL, ну так оно и работает... Ограниченно  Кроме того, я в принципе не люблю использовать клиентские скрипты, а в данной задаче, ИМХО, без них можно обойтись.

Как можно это  сделать по другому? Пример пожалуста.
Записан

Да да нет нет все остальное от лукавого.
RXL
Технический
Администратор

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

WWW
« Ответ #10 : 23-03-2004 13:07 » 

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

GET - тип запроса к серверу. Информация от пользователя передается в строке запроса в url-кодированном виде.
Что имеется ввиду под "как с ним работать"?

Возвращаясь немного назад:
Цитата
В общем понятно но в этом случае я так понимаю не получится делать внешние ссылки на варианты страницы . те если перключение по разделам сайта будет сделано именно так то пользователь всегда будет начинать работу с главной страницы....
Не понятно что-то...
Может начать с начала? Попробуй описать задачу.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Skubent
Гость
« Ответ #11 : 23-03-2004 13:48 » 

PSD, каждое действие пользователя обрабатывается серверыми скриптами. То есть см. п.1 моего первого поста в этой ветке.
Записан
PSD
Главный специалист

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

« Ответ #12 : 24-03-2004 09:49 » 

RXL,
Цитата
Не понятно что-то...
Может начать с начала? Попробуй описать задачу.

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

Сотвествено есть некое оформление, картинки, менюшка .... посеред всего этого будет выводится различная информация из разделов...
Теперь я дкмаю как это все оживить ...
Можно спрятать под пункт меню гиперссылку  и перемешаться по каскаду страничек...
Можно  написать скриптик который будет переписывать соотвествующий SPAN  в котором IFRAME  и ссылка ...

Второй вариант мне больше нравится (я всетаки програмер), но не понятно как тогда организовать произвольный доступ к разделам...

Везде в нете используются конструкции вида  
https://forum.shelek.ru/index.php/topic,2797.0.html
Меня интересует как обработать ?t=2797 для начало как получить кнему доступ из скрипта и что с нм можно сделать...

Использовать серверные скрипты мне пока не очень хочется так  как для их работы нужен хостинг а сайт предпологается размещать на холявном...(да и знаний пока не хватает)
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #13 : 24-03-2004 10:22 » 

Ежели не ошибаюсь, то document.location возвращает строку адреса браузера, а уж с ней делай что хотишь... Но все же такие вещи клиентскими скриптами реализовывать ИМХО не самое правильное решение...
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #14 : 24-03-2004 12:16 » 

PSD, вместо вызова страницы по клику, вызывай ф-ию, которой передавай ссылку на ту страницу. Ф-ия должна скачать и вставить в нужное место.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
PSD
Главный специалист

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

« Ответ #15 : 24-03-2004 13:05 » 

RXL, пример пожалуйста !
Записан

Да да нет нет все остальное от лукавого.
Skubent
Гость
« Ответ #16 : 24-03-2004 13:09 » 

RXL, я что-то тоже тебя не понял слегка...
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #17 : 24-03-2004 13:37 » 

Поясняю идею еще раз: раз ты не хочешь перегружать страницу целиком и организовать обработку на клиентской стороне, то, кликнув по навигационной ссылке, нужно не посылать запрос на сервер, а вызвать ф-ию скрипта, которая должна вставить код этой страницы в условленное место. Например, внутри некого тега <IFRAME SRC="ссылка на страницу"></IFRAME> поменять ссылку.

Работоспособность не проверял - это только идея.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
RXL
Технический
Администратор

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

WWW
« Ответ #18 : 24-03-2004 14:45 » 

Вот - по тестировал. На мозиле работает. Проверь на IE.
Смысл такой: при загрузке в IFRAME-е загружается b0.html, а по нажатию ссылок 1 и 2 туда загружается b1.html или b2.html .
Код:
<HTML>
 <HEAD>
  <TITLE>test</TITLE>
 </HEAD>
 <BODY>
<SCRIPT>
function do_click(str) {
    document.getElementById('frame').src='b'+str+'.html';
    }
</SCRIPT>
  <A HREF="JavaScript:do_click('1')">1</A>
  <A HREF="JavaScript:do_click('2')">2</A>
  <BR>
  <IFRAME SRC="b0.html" ID="frame"></IFRAME>
 </BODY>
</HTML>
« Последнее редактирование: 25-11-2007 15:05 от Алексей1153++ » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Skubent
Гость
« Ответ #19 : 24-03-2004 15:11 » 

Работает на ослике. Только, если не ошибаюсь, PSD так и сделал уже Улыбаюсь
Ему нада рассказать, как GET запрос разбирать на клиентской машине, а я не помню, JScript работает с переменными запроса или нет, сам не пользовал никогда Жаль.
Записан
Skubent
Гость
« Ответ #20 : 24-03-2004 15:32 » 

Ага, вроде как-то так, тока ногами не пинайте за кривизну...
Код:
<HTML> 
 <HEAD>
  <TITLE>test</TITLE>
 </HEAD>
 <BODY>
  <BR>
  <IFRAME ID="frame"></IFRAME>
<SCRIPT>
mystr = document.URL;
tmp = mystr.substring(mystr.indexOf('?')  + 1, mystr.lenght);
document.getElementById('frame').src = tmp + '.html';
</SCRIPT>
 </BODY>
</HTML>
Скрипт лежит после фрейма, на всякий случай, чтобы src фрейма не забивал параметр... Соответсвенно обращение будет
http://всяко-разно/index.html?doc1
http://всяко-разно/index.html?doc2
http://всяко-разно/index.html?doc3
и будет отдавать doc1.html и т.д...
« Последнее редактирование: 25-11-2007 15:08 от Алексей1153++ » Записан
PSD
Главный специалист

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

« Ответ #21 : 25-03-2004 06:24 » new

Большое спасибо ))) то что надо Отлично
Записан

Да да нет нет все остальное от лукавого.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines