У меня есть такой код,Jquery Живая Selector
<div class="panel-footer">
<div class="post-activity">
<i class="loading-icon"></i>
<button onclick="ChangeColor(this);">Change Color</button>
</div>
//Will be code
</div>
Когда мой проект работает, и я нажимаю на элемент запуска, я код изменился STATU как это,
<div class="panel-footer">
<div class="post-activity">
<i class="loading-icon"></i>
<button onclick="ChangeColor(this);">Change Color</button>
</div>
<div class="comments-ch"></div>
</div>
И моя функция ,
function ChangeColor(element)
{
$(element).closest(".panel-footer").find(".comments-ch").css("background-color","#CC0000");
}
не работает. Потому что, <div class="comments-ch"></div>
является живым/добавленным/новым кодом.
Но если я запускаю этот код, он работает
function ChangeColor(element)
{
$(element).closest(".panel-footer").find(".post-activity").css("background-color","#CC0000")
}
<div class="post-activity">...</div>
bacause коды существовавшего до запуска приложения.
Как я могу получить код append/live (.comments-ch)? Благодарю.
Возможный дубликат [jQuery 1.9 .live() не является функцией] (http://stackoverflow.com/questions/14354040/jquery-1-9-live-is-not-a-function) – Vucko
live has были обесценены, сначала обновите это, а затем просмотрите делегированные события. –
Вы хотите изменить CSS элемента перед его существованием? Это невозможно. Если нет, 'ChangeColor' будет работать до тех пор, пока элемент существует * в данный момент * обработчик события * называется *. –