Форум программистов, компьютерный форум, киберфорум
MODx CMS/CMF
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
1

Как Вывести Выпадающее Меню через Pdomenu

26.05.2015, 14:18. Показов 6558. Ответов 14
Метки нет (Все метки)

Здравствуйте. Подскажите пожалуйста, как вывести выпадающее меню через pdomenu. в чанке меню прописывала [[pdoMenu? &startId=`0` &level=`3`]] . он отображает, но не все элементы. + как прописать к некоторым элементам классы
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.05.2015, 14:18
Ответы с готовыми решениями:

Как создать через меню выпадающее окошко (в таблице) со ссылкой на следующую страницу сайта
Добрый день. Не разбираюсь особо в HTML (сайт-визитка мое первое творение http://beads-works.od.ua...

Выпадающее меню, загружаемое через ajax
Доброго времени суток! Имеется выпадающее меню, пункты для которого подгружаются через ajax в виде:...

Сделать выпадающее меню через стили
Помогите пожалуйста сделать выпадающее меню через CSS. Я взял отсюда:...

Смена таблицы через выпадающее меню
Добрый день. Есть база, в базе будет много таблиц, в которых будут данные и особый номер счетчика....

14
1 / 1 / 2
Регистрация: 29.12.2014
Сообщений: 8
10.06.2015, 01:52 2
Гугл творит чудеса, всё просто, почитай тут: http://daruse.ru/sozdanie-menyu-v-modx-pdomenu
0
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
10.06.2015, 09:14 3
Зайти на сайт разработчиков pdoTools. Разработка российская, там хорошо все задокументировано. Здесь, боюсь, ссылка будет удалена, поэтому, если интересует - в личку.
0
65 / 65 / 20
Регистрация: 26.02.2013
Сообщений: 336
Записей в блоге: 1
18.06.2015, 09:24 4
KyponaTka, документация в помощь=)
на самом деле все просто
1- указываете шаблон обертки
2-шаблон пунктов меню
3- шаблон(класс) для подпунктов
все это доступно для сниппета
0
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 13:28  [ТС] 5
[[pdoMenu?
&level=`3`
&parents=`0`
&tpl=`sec-menu-item.tpl`
&rowClass=`item[[+idx]]`
&tplInner=`@INLINE <ul class="inner">[[+wrapper]]</ul>`
&&tplInnerRow=`@INLINE <li[[+classes]]><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>[[+wrapper]]</li>`
]]
вот так вывожу. У класса inner стоит position: absolute. Я когда его убираю все пункты меню из "Обучение за рубежом" видны, но сбиваются стили. Вот сам сайт http://globusrostov.ru/
0
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
29.06.2015, 13:32 6
Так что Вас не устраивает? В меню два уровня? Если да, то технически, как я понимаю все нормально выводится. Тогда остается вопрос со стилями, верно я понимаю?
0
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 14:37  [ТС] 7
меню 3 уровня. Из обучения за рубежом должны выводится подпункты как на фото. Я не пойму почему у меня одни подпункты схлопнулись и их не видно.
0
Миниатюры
Как Вывести Выпадающее Меню через Pdomenu  
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
29.06.2015, 14:56 8
MODX все выводит, как видите.

Вопрос лишь в стилях.


Как Вывести Выпадающее Меню через Pdomenu
0
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 15:04  [ТС] 9
Я стили изначально пробовала задать именно тем элементам которые не отображаются, но там приходилось указывать высоту. И получалось, что новых добавленных ресурсов не было видно. сейчас из-за position: absolute не получается вывести. Я уже не знаю как их бы поправить? Вы с таким не сталкивались?
0
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
29.06.2015, 15:25 10
Приходилось, ясное дело.
Принцип примерно такой, а дорабатывайте сами.
В моем примере ul третьего уровня с подпунктами всплывают справа, у Вас - он виден сразу, поэтому js-код, который я сюда прицепил, скорее всего, Вам не понадобится.


Если что, сайт вот http://s541.h1.simpledream.ru/ , там пункт "Детские товары"

CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#ddmenu {
  display: block;
  width: 100%;
  height: 60px;
  margin: 0 0 0 -10px;
  padding: 0;
  background: #fff;
    cursor: pointer;
    color: #8aa8bd;
 
}
 
#ddmenu li {
    text-align: center;
    display: block;
    position: relative;
    float: left;
    font-size: 1.45em;
    margin: 0;
}
 
#ddmenu li a {
  display: block;
  float: left;
  padding: 0 30px;
  line-height: 60px;
    text-decoration: none;
  color: #000000;
 
}
#ddmenu li:hover > a { background: #d4d6d8; }
 
#ddmenu ul {
  position: absolute;
  top: 60px;
    background: #d4d6d8;
  display: none;
    padding: 10px 0 10px 0;
  list-style: none;
    z-index: 999;
 
}
 
#ddmenu ul li {
  display: block;
  width: 100%;
  text-align: left;
}
 
#ddmenu ul li a {
    font-size: 11px;
    color: #4b565c;
  display: block;
  width: 210px;
  padding: 6px 7px;
  line-height: 1.4em;
 
}
 
#ddmenu ul li a span {
    display: inline-block;
    min-width: 15px;
 
}
 
 
#ddmenu ul li ul {
    position: absolute;
    top: -10px;
    left: 200px;
    background: #e2e4e5;
    display: none;
    padding: 10px 0 10px 0;
    list-style: none;
    display: none;
    z-index: 999;
 
}
 
#ddmenu ul li ul li {
    display: block;
    width: 100%;
    text-align: left;
}
 
#ddmenu ul li a {
    font-size: 11px;
    color: #4b565c;
    display: block;
    width: 210px;
    padding: 6px 7px;
    line-height: 1.4em;
 
}


Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
$(document).ready(function(){
 
$('#ddmenu li').find('ul li a').each(function () {
        var lnk = $(this).html();
        lnk = '<span></span> ' + lnk;
        $(this).html(lnk);
    });
 
 
    $('#ddmenu li').hover(function () {
        clearTimeout($.data(this,'timer'));
        $(this).children('ul').slideDown(200);
    }, function () {
        $.data(this,'timer', setTimeout($.proxy(function() {
            $(this).children('ul').slideUp(200);
        }, this), 100));
    });
 
    $('#ddmenu li ul li a').hover(function () {
        $(this).css('color', '#005a9f');
        $(this).css('background', '#f0f1f1');
        $(this).children('span').html('❄');
    }, function () {
        $(this).css('color', '#4b565c');
        $(this).css('background', '#d4d6d8');
        $(this).children('span').html('');
    });
 
 
    $('#ddmenu li ul li').hover(function () {
        clearTimeout($.data(this,'timer'));
        $(this).children('ul').slideDown(200);
    }, function () {
        $.data(this,'timer', setTimeout($.proxy(function() {
            $(this).children('ul').slideUp(200);
        }, this), 100));
    });
 
 
    $('#ddmenu li ul li  ul li a').hover(function () {
        $(this).css('color', '#005a9f');
        $(this).css('background', '#f0f1f1');
        $(this).children('span').html('❄');
    }, function () {
        $(this).css('color', '#4b565c');
        $(this).css('background', '#e2e4e5');
        $(this).children('span').html('');
    });
 
});
0
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 16:14  [ТС] 11
Почему ломается именно "Обучение за рубежом"? У вас стили #ddmenu ul li ul { position: absolute; top: -10px; left: 200px; } отодвигают список и элементы видны. Мне тоже если отодвинуть они видны. А как вот сделать чтобы, они поднизом были. Вот после Великобритании должны идти еще 2 страны.
0
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
29.06.2015, 16:19 12
Ну а если скриптом посчитать высоту списка, где эти страны перечислены (третий уровень) и там же, в скрипте, установить соответствующую margin-top для нужного li во втором уровне?
1
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 17:05  [ТС] 13
Там еще перед Glion institute Должно стоять Высшее образование: А сss уже нельзя ничего сделать. Я в js плохо разбираюсь.

Добавлено через 34 минуты
Спасибо всем кто помог, я наконец-то сделала это меню)))
0
21 / 21 / 2
Регистрация: 04.09.2014
Сообщений: 133
29.06.2015, 17:17 14
Можно, конечно. Это ведь обычный список. Убрать у ul и li второго третьего уровня все absolute-relative - вот и решение.
0
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 151
29.06.2015, 17:22  [ТС] 15
Да до меня дошло только очень долго что-то доходило)) у меня пока в этом деле опыт небольшой. Спасибо Вам!)))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.06.2015, 17:22

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Вывести каталог из базы в выпадающее меню с ul и li
В общем есть база с колонками id и name(44 строчек) и есть выпадающее меню такого типа: &lt;div...

И снова про выдачу списка через выпадающее меню
В экселе совсем не разбираюсь но озадачило начальство. Как в приложенном примере сделать...

Переключатель содержимого блока, через выпадающее меню (+субменю)
Не знаю как правильно это назвать. Пример можно посмотреть на http://www.sports.ru/, блок...

Через выпадающее меню select не отправляется значение в MySQL
Приветствую всех! Наряду с обычным полем ввода текста потребовалось сделать выпадающее меню....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.