Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.03.2018, 21:32
Новичок на форуме
Отправить личное сообщение для tema1508 Посмотреть профиль Найти все сообщения от tema1508
 
Регистрация: 28.02.2013
Сообщений: 6

Как запретить переход по ссылке
Есть меню вида (см.ниже), необходимо чтобы в десктопной версии были активны все ссылки меню, а в мобильной осуществлялся переход только по самой последней в иерархии т.е. только по Игровые, Трансформеры, Планшеты на Android, Планшеты на Windows
Пожалуйста, подскажите, как такое можно реализовать?
(Сделать два меню, одно из которых выводить в десктопной версии, а другое в мобильной не вариант)
<ul class="menu-category">
	<li class="menu-category-item"><a href="/">Ноутбуки, планшеты</a>
		<div class="menu-category-content">
			<ul>
				<li><a href="/">Ноутбуки</a>
					<ul class="menu-category-subcontent">
						<li><a href="/">Игровые</a></li>
						<li><a href="/">Трансформеры</a></li>
					</ul>
				</li>
				<li><a href="/">Планшеты</a>
					<ul class="menu-category-subcontent">
						<li><a href="">Планшеты на Android</a></li>
						<li><a href="/">Планшеты на Windows</a></li>
					</ul>
				</li>
			</ul>
		</div>
	</li>
</ul>
Ответить с цитированием
  #2 (permalink)  
Старый 19.03.2018, 21:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,125

tema1508,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
    $(".menu-category").on("click", "a", function(event) {
    $(window).width() > 768 || $(this).parents(".menu-category-subcontent").length || event.preventDefault()
})
});
  </script>
</head>

<body>
<ul class="menu-category">
  <li class="menu-category-item"><a href="/">Ноутбуки, планшеты</a>
    <div class="menu-category-content">
      <ul>
        <li><a href="/">Ноутбуки</a>
          <ul class="menu-category-subcontent">
            <li><a href="/">Игровые</a></li>
            <li><a href="/">Трансформеры</a></li>
          </ul>
        </li>
        <li><a href="/">Планшеты</a>
          <ul class="menu-category-subcontent">
            <li><a href="">Планшеты на Android</a></li>
            <li><a href="/">Планшеты на Windows</a></li>
          </ul>
        </li>
      </ul>
    </div>
  </li>
</ul>


</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 19.03.2018, 22:46
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от рони
$(window).width() > 768
Это еще не означает, что мобильное устройство. Да и это будет возвращать результат не желаемый.
Ответить с цитированием
  #4 (permalink)  
Старый 20.03.2018, 02:30
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

// Определяем тип устройства.
function is_touch_device() {
	return (('ontouchstart' in window)
		|| (navigator.MaxTouchPoints > 0)
		|| (navigator.msMaxTouchPoints > 0));
}

if (!is_touch_device()) {
	alert("Desctop");
}
else alert("Mobile");


Пользуйтесь друзья
Ответить с цитированием
  #5 (permalink)  
Старый 20.03.2018, 05:14
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

j0hnik,
не получится, проблемы с поддержкой, а моб. устройств туево тучево.
Ответить с цитированием
  #6 (permalink)  
Старый 20.03.2018, 05:39
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

laimas,
можно дополнить, так чтобы всегда было от чего оттолкнуться и как крайний случай уже разрешение, хотя сейчас ретина в таких же как моник вполне распространена.
Ответить с цитированием
  #7 (permalink)  
Старый 20.03.2018, 05:47
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

laimas,
Проблемы у каких браузеров?
Ответить с цитированием
  #8 (permalink)  
Старый 20.03.2018, 05:52
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Ослик, у сафари есть. Да и то что нет тачпада, есть не показатель настольной системы.
Ответить с цитированием
  #9 (permalink)  
Старый 20.03.2018, 07:46
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

laimas, я вам тут подарочек приготовил.

запускать на телефоне

<script>
var i = 0;
(function run(){
navigator.vibrate(i++);
setTimeout(run, i*4);
})();
</script>
Ответить с цитированием
  #10 (permalink)  
Старый 20.03.2018, 07:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от j0hnik
я вам тут подарочек приготовил
Бесполезный для меня, надо сказать, подарочек.
Я не пользуюсь телефоном и не собираюсь.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как запретить переход по ссылкам? Al Jo Мобильный JavaScript 3 03.11.2014 04:04
По клику на картинку с ссылкой открывается портфолио, а нужен переход по ссылке nitoiti Общие вопросы Javascript 7 08.09.2014 14:39
Как запретить переход на страницу обработчика формы в action EvilDoom AJAX и COMET 8 08.09.2014 12:05
Как сделать пункт в выпадающем списке по умолчанию, после перехода по ссылке? Damian Элементы интерфейса 18 24.09.2012 18:17
Переход по ссылке и выполнение скрипта AlexMak Общие вопросы Javascript 10 27.12.2008 14:42