Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Всплывающее окошко как у ExBB [4]
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (5): « 1 2 3 [4] 5 »   

> Описание: Всплывающее окошко как у ExBB
Furax
Отправлено: 07 Августа, 2008 - 22:57:55
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




CODE:
<script type="text/javascript">

function showWindow(Index)
{
var N=4; //Количество окон
for (var i=1; i<=N; i++)
if (i!=Index)
document.getElementById('win' + i).style.display='none';

var s=document.getElementById('win' + Index).style;
if (s.display=='none')
s.display='block';
else
s.display='none';

return false;
}

</script>
 
 Top
defenderyk
Отправлено: 08 Августа, 2008 - 04:33:37
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




спасибо. Хорошо
т.е как я понял этот скрипт надо скомпановать с предыдущим...Т.к только после этого он начал работать.

Что интересно, скрипт получается не большой и работает во всех браузерах стабильно!

Зачем тогда многие другие ресурсы используют библиотеку jquery. Где скрипт довольно большой...Это что, просто дань моде?)
 
 Top
Furax
Отправлено: 08 Августа, 2008 - 04:52:30
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




Просто все копипастят из одного места! Ха-ха
 
 Top
defenderyk
Отправлено: 08 Августа, 2008 - 06:18:16
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




Furax пишет:
Просто все копипастят из одного места!


Вот и мне так кажется) Только не пойму, зачем пытаться засовывать большие скрипты аякса, если можно обойтись более маленькими и действительно по делу Хорошо
 
 Top
defenderyk
Отправлено: 08 Августа, 2008 - 17:36:08
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




Последний вопрос по этому скрипту) А как еще сделать, чтобы при закрытом положении показывалась перед ссылкой одна картинка, например плюсик, а при раскрытом положении другая? Растерялся

И еще одно. Вот скрипт, который у меня получился:
CODE:
function showWindow(Index)
{
var N=8; //Количество окон
for (var i=1; i<=N; i++)
document.getElementById('win' + i).style.display='none';
document.getElementById('win' + Index).style.display='block';

return false;
}

function showWindow(Index)
{
var N=8; //Количество окон
for (var i=1; i<=N; i++)
if (i!=Index)
document.getElementById('win' + i).style.display='none';

var s=document.getElementById('win' + Index).style;
if (s.display=='none')
s.display='block';
else
s.display='none';

return false;
}


разделял на 2 скрипта, компановал по разному) но все равно одно и тоже. Сразу после загрузки страницы надо 2 раза кликнуть по ссылку, чтобы она раскрылась. После, остальные ссылки срабатывают сразу...

Не пойму, почему Растерялся

(Отредактировано автором: 08 Августа, 2008 - 18:06:47)

 
 Top
Furax
Отправлено: 09 Августа, 2008 - 00:53:28
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




Во-первых, два определения функции showWindow() не нужны, должно быть просто
CODE:
function showWindow(Index)
{
var N=8; //Количество окон
for (var i=1; i<=N; i++)
if (i!=Index)
document.getElementById('win' + i).style.display='none';

var s=document.getElementById('win' + Index).style;
if (s.display=='none')
s.display='block';
else
s.display='none';

return false;
}


Во-вторых, последняя задача тоже решается. Правда, под неё я бы переписал код несколько иначе:
CODE:
<a href="#" onclick="showWindow(1);"><img src="closed.gif" id="label1"> Окно 1</a>
<div style="(см. ранее в этой теме)" id="win1">Содержимое окна 1</div>
<a href="#" onclick="showWindow(2);"><img src="closed.gif" id="label2"> Окно 1</a>
<div style="(см. ранее в этой теме)" id="win2">Содержимое окна 1</div>
...
<script type="text/javascript">
<!--
var openedWindow = 0;

function showWindow(Index)
{
if (openedWindow)
{
document.getElementById('win'+openedWindow).style.display = 'none';
document.getElementById('label'+openedWindow).src='closed.gif';

var oldOpened = openedWindow;
openedWindow = 0;
if (Index == oldOpened)
return;
}

document.getElementById('win'+Index).style.display = 'block';
document.getElementById('label'+Index).src='opened.gif';
openedWindow = Index;
}
//-->
</script>

Здесь, соответственно, имя "открытой" картинки - opened.gif, а "закрытой" - closed.gif.
 
 Top
defenderyk
Отправлено: 09 Августа, 2008 - 01:57:30
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




Furax пишет:
Во-первых, два определения функции showWindow() не нужны, должно быть просто

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

Сейчас переправил и все равно, по первому клику не открывает. Надо нажать один раз (в пустую) а уже потом открывает почемуто...

(Отредактировано автором: 09 Августа, 2008 - 02:02:03)

 
 Top
defenderyk
Отправлено: 09 Августа, 2008 - 03:28:45
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




Вот над таким примером подумал, работает с первого раза, но опять же надо както присабачить картинку и сделать возможность добавления неограниченного кол-ва ссылок:

CODE:
function winopen()
{
var obj=document.getElementById('win');
if(obj.style.display=='none')
obj.style.display='block';
else
obj.style.display='none';
}


CODE:

<a href='javascript: winopen()'>Линк1</a>
<div Name='win' ID='win' Style='text-indent:15pt;display:none'>Содержание блока</div>
 
 Top
Furax
Отправлено: 09 Августа, 2008 - 03:47:26
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




А что, вот с этим какие-то проблемы?
 
 Top
defenderyk
Отправлено: 09 Августа, 2008 - 04:00:17
Post Id


Super Member


Покинул форум
Сообщений всего: 709
Дата рег-ции: Окт. 2007  
Откуда: Россия

Карма 3




корректно не работает первый пример. не понимаю почему, но срабатывает только со второго клика.

Второй пример корректен)

Поставил бы плюсик, но карму почемуто убралиНедовольство, огорчение

(Отредактировано автором: 09 Августа, 2008 - 04:18:10)

 
 Top
Страниц (5): « 1 2 3 [4] 5 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« PHP/Perl »


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



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0465]     [ Gzipped ]