Компьютерный форум 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=57298)

Vampire 30-11-2005 00:29 378636

Нужна помощь по яваскрипту
 
Есть такой вот скриптец:

Код:

<!--
        // Returns the closest parent tag with tagName containing
        // the src tag. If no such tag is found - null is returned.
        function checkParent( src, tagName ) {
                while ( src != null ) {
                        if (src.tagName == tagName)
                                return src;
                        src = src.parentElement;
                }
                return null;
        }

       
        // Returns the first tag with tagName contained by
        // the src tag. If no such tag is found - null is returned.
        function checkContent( src, tagName ) {
                var pos = src.sourceIndex ;
                while ( src.contains( document.all[++pos] ) )
                        if ( document.all[pos].tagName == tagName )
                                return document.all[pos] ;
                return null ;
        }

     
        // Handle onClick event in the outline box
        function outlineAction() {   
                var src = event.srcElement ;
                var item = checkParent( src, "DT" ) ;

                if ( parent != null ) {
                        var content = checkContent( item, "DL" ) ;

                        if ( content != null )
                                if ( content.style.display == "" )
                                        content.style.display = "block" ;
                                else
                                        content.style.display = "" ;
                }
                event.cancelBubble = true;
        }
   
// -->

А вот тут он применяется:

Код:

<DIV onClick="javascript: outlineAction();">
<dl>
<!--Text-->
<dt class="oParent">Боевые отравляющие вещества<dl>
<dt class="oItem"><a href="poison/po01/po0002.html" class="m"><span class="q">Адамсит (DM)</a></dt>
<dt class="oItem"><a href="poison/po01/po0003.html" class="m"><span class="q">Ви-Икс газ (VX)</a></dt>
<dt class="oItem"><a href="poison/po01/po0004.html" class="m"><span class="q">Дифенилхлорарсин (DA) </a></dt>
<dt class="oItem"><a href="poison/po01/po0005.html" class="m"><span class="q">Дифенилцианарсин (DC)</a></dt>
<dt class="oItem"><a href="poison/po01/po0006.html" class="m"><span class="q">Дифосген (CG2)</a></dt>
<dt class="oItem"><a href="poison/po01/po0001.html" class="m"><span class="q">Зарин</a></dt>
<dt class="oItem"><a href="poison/po01/po0007.html" class="m"><span class="q">Зоман (GD)</a></dt>
<dt class="oItem"><a href="poison/po01/po0008.html" class="m"><span class="q">Люизит (L)</a></dt>
</dl></dt>
<dt class="oParent">Бытовые отравляющие вещества<dl>
<dt class="oItem"><a href="poison/po02/po0001.html" class="m"><span class="q">Уксусная кислота</a></dt>
<dt class="oItem"><a href="poison/po02/po0002.html" class="m"><span class="q">Хлорциан</a></dt>
</dl></dt>
<!--/Text-->
</dl>
</DIV>

Скрипт отвечает за структурированные списки с сылками. Позволяет разворачивать/сворачивать списки.
В эксплорере скрипт просчитывается без проблем, а вот в Mozilla Firefox возникают проблемы в 27 строчке скрипта (var src = event.srcElement ;). В чем трабл и как его можно разрешить?

ЗЫ: применение скрипта можно глянуть у меня на сайте http://tools-of-death.ru/poison.html

Vampire 12-01-2006 01:51 391291

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

Буду очень благодарен :sorry:

Vlad Drakula 21-06-2006 17:23 453199

Vampire
я бы перехватывал клин по каждой ячейке отдельно...

кстати вот ссылка на то как можно организовать дерево:
http://www.artlebedev.ru/tools/techn...html/treeview/

Vampire 21-06-2006 17:50 453215

Цитата:

я бы перехватывал клин по каждой ячейке отдельно...

кстати вот ссылка на то как можно организовать дерево:
http://www.artlebedev.ru/tools/tech.../html/treeview/
Спасибо конечно за помощь, но я уже со своими скриптами разобрался, хотя надо будет поглядеть чего из себя представляет приведенный тобои пример. (может пригодится) :)

Vlad Drakula 21-06-2006 17:55 453219

Vampire
ксожалению сразу дать ответы на все не могу, но стараюсь не оставлять мемы без ответа ;)


Время: 19:45.

Время: 19:45.
© OSzone.net 2001-