Я работаю над составлением списка номеров с каждым номером на его отдельном div. До сих пор я могу удалить div с Javascript (по щелчку), но я хотел бы включить JQuery, чтобы добавить класс в div, а затем удалить все div этого класса с помощью кнопки или чего-то подобного,
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=203">
<title>Lista Mundial</title>
<style>
.divContainer {
width: 35px;
height: 25px;
border: solid 1px #c0c0c0;
background-color: #e1e1e1;
font-family: verdana;
float: left;
}
.text {
font-size: 15px;
font-family: verdana;
color: black;
margin-top: 4px;
}
h4 {
font-family: Verdana;
color: black;
text-decoration: none;
}
</style>
</head>
<body>
<h4>Double click para borrar un numero</h4>
<script type="text/javascript">
for(var i = 1; i <= 639; i++){
var divTag = document.createElement("div");
divTag.id = i;
divTag.className = "divContainer";
document.body.appendChild(divTag);
divTag.ondblclick = function(){this.parentNode.removeChild(this)};
var pTg = document.createElement("p");
pTg.setAttribute("align", "center");
pTg.className = "text";
pTg.innerHTML = (i);
document.getElementById(i).appendChild(pTg);
}
</script>
</body>
</html>
http://jsfiddle.net/ramonfabrega/AZSy8/
Для простоты я просто попытался скрыть нажатие на div, но JQuery, похоже, не работает. Так что что-то должно быть выключено.
Два вопроса:
1) jQuery не был загружен.
2) Вы пытались связать событие click с недопустимым selector
(divTag
вместо div
)
Здесь обновленная скрипка: http://jsfiddle.net/LFC3A/2/
Что касается №2 - jQuery позволяет вам выбрать один из нескольких способов. Наиболее распространенным является использование selector
. Большинство селекторов поддерживает jQuery из CSS 1 - 3, хотя jQuery поддерживает некоторые из своих собственных селекторов (например, div:eq
, div:gt
и т.д.). Посмотрите страницу селекторов здесь: http://api.jquery.com/category/selectors/
Теперь, если ваша разметка была:
<body>
<divTag>My Custom Div Tag</divTag>
<div>My regular DIV</div>
</body>
Тогда твоя оригинальная скрипка сработала бы. На самом деле, здесь обновленная скрипка, демонстрирующая, что: http://jsfiddle.net/FpMAw/ (я обновил ваш элемент createElement, чтобы вернуть пользовательский элемент divTag
)
Другой способ доступа к jQuery - это передать ему элемент DOM. Что-то вроде:
var $body = $(document.body)
эквивалентен var $body = $('body')
Если вы ссылаетесь на это, у вас теперь есть объект jQuery с кучей полезных вспомогательных методов. Итак, в нашем предыдущем примере мы можем теперь:
$body.css('color', 'red')
Надеюсь, это поможет объяснить немного больше, почему это не сработало. Если у вас есть другие вопросы, не стесняйтесь спрашивать :)
Это создаст и добавит обработчик кликов одновременно.
$('<div>').click(function(e){ this.addClass('active');})
вы не включаете библиотеку jQuery в скрипку
измените $('divTag')
на $('div')
Чтение $ ("element")
$(document).ready(function () {
$('div').click(function () {
$(this).hide();
});
});