Альтернатива JQuery выбрке
$('.advclass:contains(7789)')
Как такой поиск по содержимому можно реализовать без JQuery? |
|
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>
|
рони,
Спасибо, все работает |
Решение на ES6:
Array.from(document.querySelectorAll(".advclass")).filter(
(node) => node.innerHTML.contains(7789)
);
|
С сохранением типа и немножко ES7:
document.querySelectorAll(".advclass")::Array.prototype.filter(
(node) => node.innerHTML.contains(7789)
);
|
Erolast,
:thanks: |
| Часовой пояс GMT +3, время: 02:44. |