Выполняя следующие действия, я вижу, что таблица стилей не применяется к щелканному элементу в списке. Что может быть возможной причиной?
Следующий пример работает таким образом, если в текстовое поле добавлена строка, а затем нажата кнопка, в список добавляется новый элемент. Если щелкнуть элемент в списке, его следует погладить.
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#taskText').keydown(function (evt) {
if (evt.keyCode == 13) {
addTask(this, evt);
}
});
$('#addTask').click(function (evt) {
addTask(document.getElementById('taskText'), evt);
});
// following statements not working
$('#tasks li').live('click', function(evt) {
$(this).addClass('done');
});});
function addTask(textBox, evt) {
evt.preventDefault();
var taskText = textBox.value;
$('<li>').text(taskText).appendTo('#tasks');
textBox.value = "";
};
</script>
<style type="text/css">
.done{
text-decoration:line-through;
}
</style>
</head>
<body>
<ul id="tasks">
</ul>
<input type="text" id="taskText" />
<input type="submit" id="addTask"/>
</body>
</html>
изменения Try ' $ ('# tasks li'). live ('click', function (evt) { $ (this) .addClass ('done'); });}); 'to' $ ('# tasks li') .on ('click', function (evt) { $ (this) .addClass ('done'); });}); ' – vanhonit
Большое спасибо за ответ. Протестировано, но, к сожалению, это не сработало. – Chanchal