Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.05.2018, 15:49
Интересующийся
Отправить личное сообщение для lordenas Посмотреть профиль Найти все сообщения от lordenas
 
Регистрация: 08.11.2015
Сообщений: 14

Переход к первому родителю.
Возможно ли, как-то перескочить к самому верхнему родителю, удовлетворяющего условие? Например:
В списке может быть бесконечное вхождение ul в тег li. И нужно попасть именно в первый UL, от места вызова функции.

При чем список динамический

<li>
   <ul Нужно попасть сюда>
         <li>
               <ul>
                      <li>Место вызова функции</li>
                </ul>
         </li>
   </ul>
</li>

<li>
второй блок
</li>

<li>
Третий блок
</li>
Ответить с цитированием
  #2 (permalink)  
Старый 18.05.2018, 16:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

lordenas,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css"> .red {
      background-color: #FF0000;

  }
 ul {
     border: 1px solid #0000FF
 }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
    $("li").on("click", function() {
    $(this).parents("ul  ul").last().addClass("red")
})
});
  </script>
</head>

<body>
<ul>
    <li>
   <ul> Нужно попасть сюда
         <li>
               <ul>
                      <li>Место вызова функции</li>
                </ul>
         </li>
   </ul>
</li>

<li>
второй блок
</li>

<li>
Третий блок
</li>

</ul>

</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 18.05.2018, 16:59
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

<li>
   <ul id='ul1'>
         <li>
               <ul id='ul2'>
                      <li>Место вызова функции</li>
                </ul>
         </li>
   </ul>
</li>

<li>
второй блок
</li>
<li>
Третий блок
</li>
<div id='res'></div>
<script>
var parent, last = '';
[].forEach.call(document.querySelectorAll('li'), function(elem) {
   elem.onclick = function() {
       parent = elem.parentNode;  
       last = parent.nodeName == 'UL'? parent.id : last ;
       res.innerText = last;
   }
});
</script>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переход на страницу к определенному элементу yurasa Элементы интерфейса 4 14.02.2017 22:46
Плавный переход к элементу по внешней ссылке deniskutovskiy jQuery 13 16.10.2015 22:30
Переход по метке <a href = #metka> с нажатием в <ul><li> papacoca (X)HTML/CSS 2 01.10.2014 15:09
как при нажатии на ссылку задержать переход по ней imedia Элементы интерфейса 2 30.09.2014 21:21
JS и getURL плавный переход к anchor Blizzart Общие вопросы Javascript 4 16.01.2011 17:48