Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Сменая вкладок. каким образом? (http://forum.oszone.net/showthread.php?t=84474)

Netloger 24-05-2007 02:05 590326

Сменая вкладок. каким образом?
 
Доброго времени суток, уважаемые форумцы!

Подскажите пожалуйста, есть ли какая-нибудь возможность сдлеать следующую вещь:

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

Тоесть надо узнавать что за страница или еще чего как, и в зависимости от этого присываивать ячейке какой-то определнный стиль. Кто-нить сталкивался? Есть идеи?

К примеру можно отнести несколько шабов ждумлы. Ходишь по разделам и там при заходе в раздел линк выделяется.

Заранее спасибо за ответ, наводки. :) Пользоваться можно всем, пхп, джаваскрипт и т.д

vadimiron 24-05-2007 11:28 590419

Netloger
Меняем стиль при событии onClick.

Something like that
HTML код:

<HTML>
<HEAD><TITLE>DIV Example</TITLE>
<SCRIPT LANGUAGE = "javascript">
function change() {
document.all.heading.style.color = "red";
}
</SCRIPT>
</HEAD>
<BODY>
<DIV ID=heading STYLE="color: blue" onclick="change()">
<H1> Click to turn this text red. </H1>
</DIV>
<BODY>
</HTML>


Netloger 24-05-2007 23:20 590650

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

vadimiron 24-05-2007 23:57 590656

Netloger
Ну тогда сохранять в сессии или передовать переметрами (GET), или писать в куки на крайний случай

И призагрузке страницы обрабатывать данный параметр и загружать нужные стили

Sham 25-05-2007 00:55 590669

Netloger код давай... (шо за кнопки)

DedAlex 25-05-2007 11:59 590809

Скриптом проверять адрес страницы и в соответствии с адресом менять стиль у кнопки. Подробнее при наличии кода.

Netloger 26-05-2007 01:09 591113

Хм, какого кода именно? Не до конца понял просто, поясните если не сложно.

ПРимер: сайт html 5 страниц - 5 разделов - 5 кнопок на каждую страницу со ссылками. Надо сделать чтобы автоматом при выбранном разделе подключался определенный стиль, по-мойму я где-то видел что-то подбное, но там менялся просто стиль полностью для всего сайта.

Если нужны еще какие-то данные, скажу. :) Спасибо за ответы!

Sham 26-05-2007 02:24 591122

Netloger код примерной кнопки (что представляет - submit формы, скриптовая и т.д. - т.е. что делает - отсылает форму, или просто как ссылка...)

Netloger 27-05-2007 00:29 591395

Вы меня наверно не правильно все-таки понял, хотя скорее я наверно не правильно выразился. Не кнопки, просто ссылка. :)

Sham 27-05-2007 01:25 591411

Netloger ну для ссылок то это просто... ну вот хотя бы это...
HTML код:

<script language="JavaScript">
<!--
function bg(){
var a=document.body.getElementsByTagName('A');
for (f in a){
if (a[f].href==document.location.href&&a[f].parentNode.tagName=='TD'){
a[f].parentNode.style.background='yellow';//фоновый цвет тега TD со ссылкой
}}}
//-->

</script>
<body onload="bg()">...

Функция изменяет фоновый цвет клетки таблицы с текущей ссылкой на желтый. Как видно, это общий случай (перебираются все ссылки на страничке). Можно сделать и для ссылки конкретный стиль и т.д... Разберешься короче...

Netloger 27-05-2007 01:50 591414

о. меня поняли, спасибо. буду пробовать. Если что еще вернусь. :)

Underson 06-07-2007 23:31 609462

мне кажется что самый увернный вариант это отслеживание че нажато через GET. мне как то пришлось делать нечто подобное времени на подумать небыло и лобовое решение было вот такое конечно не лаконичное, но на сайтик где 5 ссылок покатить
PHP код:

$menu1_bg =""$menu1_class ='class="menu2"';
               
$menu2_bg =""$menu2_class ='class="menu2"';
             
$menu3_bg =""$menu3_class ='class="menu2"';
             
$menu4_bg =""$menu4_class ='class="menu2"';
             
$menu5_bg =""$menu5_class ='class="menu2"';
             
$menu6_bg =""$menu6_class ='class="menu2"';
             
$menu7_bg =""$menu7_class ='class="menu2"'
             switch (
$menu){
                     case 
1:
                        
$menu1_bg ='bgcolor="#0D3456"'$menu1_class ='class="menu1"';
                        break;
                     case 
2:
                        
$menu2_bg ='bgcolor="#0D3456"'$menu2_class ='class="menu1"';
                        break;
                     case 
3:
                        
$menu3_bg ='bgcolor="#0D3456"'$menu3_class ='class="menu1"';
                        break;
                     case 
4:
                        
$menu4_bg ='bgcolor="#0D3456"'$menu4_class ='class="menu1"';
                        break;
                     case 
5:
                        
$menu5_bg ='bgcolor="#0D3456"'$menu5_class ='class="menu1"';
                        break;
                     case 
6:
                        
$menu6_bg ='bgcolor="#0D3456"'$menu6_class ='class="menu1"';
                        break;
                     case 
7:
                        
$menu7_bg ='bgcolor="#0D3456"'$menu7_class ='class="menu1"';
                        break;
                        
                }; 

тоесть отслеживаем что нажато через ГЕТ и КЕЙСом выбираем значения цветов и стилей, в принципе если много ссылок это может статть довольно проблематичным хотя...

VeshchiyOleg 08-07-2007 14:39 609993

это же самое можно написать короче:
PHP код:

for ($i 1$i <= 7$i++) {
        if (
$i == $menu) {
                ${
'menu'.$i.'_bg'} = 'bgcolor="#0D3456"';
                ${
'menu'.$i.'_class'} = 'class="menu1"';
        } else {
                ${
'menu'.$i.'_bg'} = '';
                ${
'menu'.$i.'_class'} = 'class="menu2"';
        }



Underson 09-07-2007 11:38 610289

это да..не вопрос.. но факт остается фактом.. все равно нужно через Гет передавать то на что кликнули

Alex_soldier 10-09-2007 16:33 640972

Я использую AML.
Наиболее простой способ - завести "номерной стиль" и для каждой страницы указывать ее номер ссылки.
Приведу пример проекта:

Цитата:

Цитата Файл Project.aml
{exec target="Page1.htm"}
{var name="0" value="1" title="Номер ссылки"}
{use src="_part1.txt" title="Шаблон верха страницы"}
{use src="Page1.txt" title="Тело страницы"}
{use src="_part2.txt" title="Шаблон низа страницы"}

{exec target="Page2.htm"}
{var name="0" value="2" title="Номер ссылки"}
{use src="_part1.txt" title="Шаблон верха страницы"}
{use src="Page2.txt" title="Тело страницы"}
{use src="_part2.txt" title="Шаблон низа страницы"}

{exec target="Page3.htm"}
{var name="0" value="3" title="Номер ссылки"}
{use src="_part1.txt" title="Шаблон верха страницы"}
{use src="Page3.txt" title="Тело страницы"}
{use src="_part2.txt" title="Шаблон низа страницы"}

{exec target="Page4.htm"}
{var name="0" value="4" title="Номер ссылки"}
{use src="_part1.txt" title="Шаблон верха страницы"}
{use src="Page4.txt" title="Тело страницы"}
{use src="_part2.txt" title="Шаблон низа страницы"}

{exec target="Page5.htm"}
{var name="0" value="5" title="Номер ссылки"}
{use src="_part1.txt" title="Шаблон верха страницы"}
{use src="Page5.txt" title="Тело страницы"}
{use src="_part2.txt" title="Шаблон низа страницы"}

Цитата:

Цитата Файл _part1.txt
<html>
<head>
<style>

a.link{var name="0" action="write" title="Вставка номера страницы"} {... например color: red; ...}

</style></head>
<body>
...
{use src="Menu.txt" title="Подключаем меню"}
...

Цитата:

Цитата Файл Menu.txt
<a class="link1" href="Page1.htm"> Страница 1 </a>
<a class="link2" href="Page2.htm"> Страница 2 </a>
<a class="link3" href="Page3.htm"> Страница 3 </a>
<a class="link4" href="Page4.htm"> Страница 4 </a>
<a class="link5" href="Page5.htm"> Страница 5 </a>

Цитата:

Цитата Файл _part2.txt
</body>
</html>

Цитата:

Цитата Файлы Page1.txt, Page2.txt, Page3.txt, Page4.txt, Page5.txt
Ваше содержимое, но пока можно оставить пустыми или поместить какое-либо различающееся содержимое.

Собственно остается только загрузить программу в AML-редактор и откомпилировать. Через пару секунд получите те самые 5 html-страниц!

В своих проектах я использую гораздо более сложную структуру файлов проекта.
Если кто захочет тоже попробовать, обращайтесь. помогу!


Время: 18:13.

Время: 18:13.
© OSzone.net 2001-