Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Пункты в разворачивающемся дереве накладываются друг на друга (https://javascript.ru/forum/dom-window/37782-punkty-v-razvorachivayushhemsya-dereve-nakladyvayutsya-drug-na-druga.html)

JSQ 07.05.2013 00:09

Пункты в разворачивающемся дереве накладываются друг на друга
 
Есть разворачивающееся дерево (по сути, аккордеон), которое управляется скриптом:

// Дерево меню
    $('.l1').toggle(function() {
        $(this).closest('div').find('.c1').toggle();
        $(this).closest('div').find('.p1').css('background-position','0 -7px');
    }, function() {
        $(this).closest('div').find('.c1').toggle();
        $(this).closest('div').find('.p1').css('background-position','0 0')
    });


    // Поддерево меню
    $('.l3').toggle(function() {
        $(this).closest('li').find(".h_hide2").toggle();
        $(this).closest('li').find(".p3").css('background-position','0 -7px')
    }, function() {
        $(this).closest('li').find(".h_hide2").toggle();
        $(this).closest('li').find(".p3").css('background-position','0 0')
    });


У дерева три уровня, при добавлении более 2-3 пунктов в третий уровень они начинают накладываться сверху на пункты второго уровня (т. е. пункты второго уровня, которые в скрипте обозначены как "поддерево", не смещаются при добавлении новых пунктов третьего уровня)

В чем может быть проблема

animhotep 07.05.2013 11:20

Цитата:

Сообщение от JSQ (Сообщение 249335)
В чем может быть проблема

проблема может быть в стилях

korobas 07.05.2013 13:29

угу, стили... возможно position: absolute вам поможет)


Часовой пояс GMT +3, время: 11:25.