Связывать событие jQuery только после загрузки DOM

0

В моей статической версии страницы у меня есть js-вызов:

$(document).on('click','#id_tag', function() {

Элемент с id #id_tag не будет в DOM при первом загрузке документа. Как связать это событие только при появлении элемента DOM?

Примечание. В более ранней версии я неправильно описал идентификатор как .id_tag Следовательно, комментарии ниже

  • 1
    Как элемент добавляется в DOM, не могли бы вы добавить его в то же время? Кроме того, идентификаторы не должны иметь . в них
  • 0
    Это должно работать .. Единственное, что я могу догадаться, это # вместо . в вашем коде ..
Показать ещё 2 комментария
Теги:

4 ответа

0
Лучший ответ

Я думаю, вы этого хотите:

$(document).ready(function(){
   $(document).on('click','.id_tag', function() {
     if($(this)!=null){
         //do ur stuff
     }
  });
});
0

Сжатый:

$(function(){
    $(this).on('click', '.id_tag', function() {
        //handle click
    });
});

Объяснение: Это приводит к тому, что jQuery присоединяет прослушиватель кликов ко всему элементу document. Когда он щелкнут, jQuery затем проверяется, был ли это id_tag класса id_tag который был id_tag.

0

DOM READY FUNCTION выполнит задание!

Самый простой пример будет таким!

$(function(){
  var $doc = $(document);
  $doc.on('click','#id_tag', function() {
    alert('id_tag is clicked!');
  });
});
0

Или это -

$(function(){
   // DOM Ready - do your stuff 
   $(document).on('click','.id_tag', function() {
     if($(this)!=null){
         //do ur stuff
     }
  });
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню