2014-12-02 3 views
1

я есть 4 дивы, я хочу, чтобы получить щелкнули ДИВ и изменить его стиль, мои дивы создаются динамически, поэтому я не хочу использовать идентификаторJQuery выберите щелкнул DIV

<div class="item">Lorem ipsum 1</div> 
<div class="item">Lorem ipsum 2</div> 
<div class="item">Lorem ipsum 3</div> 
<div class="item">Lorem ipsum 4</div> 

Jquery код :

<script type="text/javascript"> 

    $('.item').on("click", function() { 
    // change style 
}); 
</script> 

ответ

1
$(document).on("click", ".item", function() { 
    var elt = $(this); 
    // do whatever you want with elt.css() 
}); 

Таким образом, вы будете ловить каждый клик событие на любой .item элемента, когда создается элемент (добавляется к странице с помощью AJAX, например)

Более подробную информацию о он на jQuery Event Deleguation doc

5

Вы должны использовать event delegation.

Событие делегирование позволяет нам присоединить одного прослушивателя событий к родительскому элементу, который будет срабатывать для всех потомков, соответствующих селектору, независимо от того, существуют ли эти потомки или добавлены в будущем.

$('body').on("click",'.item', function() { 
    // change style 
}); 
+1

@Bharadwaj давайте просто сказать, что этот вопрос был задан в несколько тысяч раз ... – Regent

0

Сначала мы включаем библиотеку jquery. Затем мы используем css для jquery click event.

<script type="text/javascript" src='//ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js'></script> 

    <script type="text/javascript"> 

    $(document).ready(function(){ 
    $(".item").click(function(){ 
    $(".item").css("color", "red"); 
    //we can style anything .css('property','value'); 
     }); 
    }); 

    </script> 
</head> 
<body> 
Смежные вопросы