Я создал простое приложение чата с функциональностью оценки сообщений. Я хочу предотвратить самооценку, сокрыв соответствующие кнопки рейтинга. Так, например, на экране Боба не должно быть кнопок рейтинга рядом с сообщениями Боба.jQuery/JS - Скрытие определенных динамически созданных элементов/кнопок
Я попытался понять это, сравнив #name и # имя-пользователя. Если они равны, кнопки рейтинга должны быть скрыты. Но похоже, что я делаю это не правильно.
Основная проблема заключается в том, что сообщение div .standard-msg создается динамически, поэтому мне нужно что-то вроде «on-dom-change».
Всякая помощь appriciated.
$("#standard-msg").on("DOMSubtreeModified", function() {
$('.standard-msg').each(function() {
if ($('#name').val() == $(this).find('#user-name').text()) {
$('button').hide();
}
});
});
<div id="chat-wrapper" class="wrapper">
<div class="message-box" id="message-box">
<div class="standard-msg">
<button class="rating like-btn">Like</button>
<button class="rating dislike-btn">Dislike</button><span style="color:#FF7000" class="user-name">Bob</span> : <span class="user-message">hi</span>
</div>
<div class="standard-msg">
<button class="rating like-btn">Like</button>
<button class="rating dislike-btn">Dislike</button><span style="color:#FF7000" class="user-name">Alice</span> : <span class="user-message">hello</span>
</div>
</div>
<div class="panel">
<input type="text" name="name" id="name" placeholder="Your Name" maxlength="10" />
<input type="text" name="message" id="message" placeholder="Message" maxlength="80" />
<button id="send-btn" class="btn">Send</button>
</div>
</div>
где HTML элемент # стандартного тзд? Не могу видеть в своем HTML-коде. – sidrocks
О, это ошибка ввода. Это .standard-msg, а не # standard-msg – EmWe