Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.04.2015, 14:59
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Альтернатива JQuery выбрке
$('.advclass:contains(7789)')


Как такой поиск по содержимому можно реализовать без JQuery?
Ответить с цитированием
  #2 (permalink)  
Старый 22.04.2015, 15:21
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

https://developer.mozilla.org/en-US/...erySelectorAll
Ответить с цитированием
  #3 (permalink)  
Старый 22.04.2015, 15:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

AntonMs,
<!DOCTYPE HTML>

<html>

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

  </style>
</head>

<body>

<p>1</p><p class="advclass">7789</p><p class="advclass">1</p>
<script>
  function get(sel,str)
  {
 return  Array.prototype.filter.call(document.querySelectorAll(sel), function(el) { return  el.textContent.indexOf(str) > -1 })

  }
  var elem = get('.advclass','7789')[0]
    elem.classList.add('red')

</script>
</body>

</html>
Ответить с цитированием
  #4 (permalink)  
Старый 22.04.2015, 15:45
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

рони,
Спасибо, все работает
Ответить с цитированием
  #5 (permalink)  
Старый 22.04.2015, 16:55
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Решение на ES6:
Array.from(document.querySelectorAll(".advclass")).filter(
    (node) => node.innerHTML.contains(7789)
);
Ответить с цитированием
  #6 (permalink)  
Старый 22.04.2015, 17:03
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

С сохранением типа и немножко ES7:
document.querySelectorAll(".advclass")::Array.prototype.filter(
    (node) => node.innerHTML.contains(7789)
);
Ответить с цитированием
  #7 (permalink)  
Старый 22.04.2015, 20:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Erolast,
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамический подсчет в таблице muraig jQuery 5 11.10.2014 16:54
Ни один скрипт и плагин не видит Jquery razorg1991 jQuery 5 30.03.2014 14:51
хочу инвайт на хабр macdack Оффтопик 45 28.07.2013 23:18
Вопрос поддержки старых методов jQuery antonM jQuery 1 04.10.2012 00:08
jQuery Feature Carousel Plugin - Есть ли альтернатива? lraido AJAX и COMET 0 09.11.2011 21:39