|
|
Да, просто замени весь шаблон на этот:
|

05.06.2017, 21:50
|
|
Аспирант
|
|
Регистрация: 11.03.2017
Сообщений: 40
|
|
|
Запретить ссылку если есть подменю.
Здравствуйте.
Подскажите пожалуйста, как запретить ссылку в главном меню, если у него есть подменю? Как запретить вообще знаю, но в главном меню есть вкладки у которых нет подменю и они должны работать, а у тех которых есть подменю, ссылка должна быть запрещена, а дочерние отрываться и работать.  Надеюсь понятно объяснила..
|
|

05.06.2017, 22:00
|
 |
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,156
|
|
|
Jolly,
может код? а так выбрать подменю, выбрать ссылку, поставить event.preventDefault(); и всё
|
|

05.06.2017, 22:03
|
 |
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
<head>
<meta charset="utf-8">
</head>
<body>
<ul>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">google</a></li>
<ul>
<li><a href="http://google.com">google</a></li>
</ul>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">google</a></li>
</ul>
<script>
document.querySelectorAll("ul > ul > li > a")[0].onclick = function(){
event.preventDefault();
};
</script>
</body>
выбирите нужный селектор
вот вам пример!
|
|

05.06.2017, 22:06
|
 |
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,156
|
|
|
|
|

06.06.2017, 04:52
|
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
|
Сообщение от Jolly
|
|
как запретить ссылку в главном меню, если у него есть подменю?
|
А зачем же вы формируете ссылку у элемента, которому она не нужна?
|
|

06.06.2017, 16:04
|
|
Аспирант
|
|
Регистрация: 11.03.2017
Сообщений: 40
|
|
Сообщение от j0hnik
|
<head>
<meta charset="utf-8">
</head>
<body>
<ul>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">не должна работь</a>
<ul>
<li><a href="http://google.com">google</a></li>
</ul>
</li>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">не должна работь</a>
<ul>
<li><a href="http://google.com">google</a></li>
</ul>
</li>
<li><a href="http://google.com">google</a></li>
</ul>
<script>
document.querySelectorAll("ul > ul > li > a")[0].onclick = function(){
event.preventDefault();
};
</script>
</body>
выбирите нужный селектор
вот вам пример!
|
Спасибо за ответ.
Наверное я не правильно объяснила(.. В вашем примере, мне нужно чтобы все ссылки открывались, кроме "не должна работать".
|
|

06.06.2017, 16:05
|
|
Аспирант
|
|
Регистрация: 11.03.2017
Сообщений: 40
|
|
|
Я работаю с Друпал, там наверное по-другому не уберешь(.
|
|

06.06.2017, 16:06
|
|
Аспирант
|
|
Регистрация: 11.03.2017
Сообщений: 40
|
|
|
Спасибо за помощь, я написала в ответе код, посмотрите пожалуйста.
|
|

06.06.2017, 16:45
|
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
|
Сообщение от Jolly
|
|
Я работаю с Друпал, там наверное по-другому не уберешь(
|
Это почему? Код меню формирует сервер, проверить, что есть подменю не сложно, а значит и не добавлять ссылку. Вот только подменю, это например подкатегории, а родитель сама категория. То есть вы фактически лишаете пользователя перехода на категорию. Умнее бы было раскрывать подменю по наведению, а щелчок это переходы.
|
|

06.06.2017, 16:57
|
 |
Профессор
|
|
Регистрация: 01.12.2016
Сообщений: 3,650
|
|
Сообщение от Jolly
|
Спасибо за ответ.
Наверное я не правильно объяснила(.. В вашем примере, мне нужно чтобы все ссылки открывались, кроме "не должна работать".
|
<head>
<meta charset="utf-8">
</head>
<body>
<ul>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">не должна работь</a>
<ul>
<li><a href="http://google.com">google</a></li>
</ul>
</li>
<li><a href="http://google.com">google</a></li>
<li><a href="http://google.com">не должна работь</a>
<ul>
<li><a href="http://google.com">google</a></li>
</ul>
</li>
<li><a href="http://google.com">google</a></li>
</ul>
<script>
var el = document.querySelectorAll("li:nth-child(2n+2) > a");
for (var i=0; i<el.length; i++) {
el[i].onclick = function(){
event.preventDefault();
}
};
</script>
</body>
Вот селектор для данного примера
Если у вас по другому сформировано все это не сработает!
|
|
|
|