#javascript #jquery #search
#javascript #jquery #Поиск
Вопрос:
я попытался выполнить поиск текста в своем html-коде с помощью jquery, но безуспешно, это мой код:
$("body").on("searchByLikuy", function(e, msg) {
msg = msg.replace(/'/g, "'");
found = $("*:contains('" msg "'):last");
if(found.length > 0) {
$('html, body').stop(true).animate({
scrollTop: found.offset().top - 30
}, 1000);
}
});
Когда html-код:
<html>
<head>
</head>
<body>
<div class="test">
abcde
</div>
</body>
</html>
и я ищу сообщение msg «abcde»
, которое работает нормально, и возвращаю в переменную «найдено» то, что мне нужно.
но когда html-код:
<html>
<head>
</head>
<body>
<div class="test">
<span>a</span>
<span>b</span>
<span>c</span>
<span>d</span>
<span>e</span>
</div>
</body>
</html>
он ничего не возвращает.
что я могу сделать для поиска?
спасибо
Ответ №1:
Вы можете попробовать просто :
if( $("body").text().includes(msg) ) { ...
Или с помощью регулярного выражения :
if( new RegExp(msg, "i").test( $("body").text() )) { ...