Подтвердить что ты не робот

Jquery onclick на div

У меня есть простой вопрос. Следующий код работает для всех тегов:

$('*').click(function(e) {  
    alert(1);
});

Но, когда я пробую этот код для div с id "content":

$('#content').click(function(e) {  
    alert(1);
});

Что я делаю неправильно?

4b9b3361

Ответ 1

Удостоверьтесь, что он находится в готовом к документу теге. Вместо этого попробуйте использовать .live

$(document).ready(function(){

    $('#content').live('click', function(e) {  
        alert(1);
    });
});

Пример:

$(document).ready(function() {
    $('#content').click(function(e) {  
      alert(1);
    });
});
#content {
    padding: 20px;
    background: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<div id="content">Hello world</div>

Ответ 2

Ничего.

$('#content').click(function(e) {  
    alert(1);
});

Будет привязан к существующему элементу HTML с идентификатором, установленным в content, и отобразит окно сообщения при щелчке.

  • Убедитесь, что #content существует до использования этого кода
  • Что идентификатор уникальный
  • Проверьте вашу консоль Javascript на наличие ошибок или проблем.

Ответ 3

Может ли div с id = "content" не создаваться при присоединении этого события? Вы можете попробовать метод live() jquery.

Кроме того, может быть несколько div с одним и тем же идентификатором, иначе вы просто ошиблись, это происходит...

Ответ 4

Оберните код в метод $(document).ready() или $().

$(function(){

$('#content').click(function(e) {  
    alert(1);
});

});

Ответ 5

Отъезд fiddle... вы делаете это правильно. Убедитесь, что идентификатор является содержимым, а также проверьте, нет ли других элементов с одним и тем же идентификатором. Если есть несколько элементов с одним и тем же идентификатором, он будет привязан к первому. Возможно, поэтому вы его не видите.