Загрузка скрипта jquery после завершения события

#jquery #events #html

#jquery #Мероприятия #HTML

Вопрос:

Легко для средних и опытных пользователей. Учитывая следующие файлы:

HTML:

 <html>
  <head>
     <script>
       $(document).ready(function()
       {
          $("#fashion").onclick(function()
          {
             $get("ajax.php", { section: fashion}, function(result)
             {
                $("#container").html(result);
             });
           });

           $("div").click(function()
           {
             var identification = $(this).attr("id");
             alert(identification);
           });
        });
     </script>
  </head>
  <body>
     <div id="fashion">
       Click me
     </div>

     <div id="container">
     <div>

     <div id="test">
       Test
     </div>
  </body>
</html>
  

Я извлекаю HTML-информацию с другой страницы «ajax.php » вызванный ранее в методе

 <?php
if($_GET['fashion'])
{
   ?><div id="fashion_content">This is a random text</div><?php 
}
?>
  

Дело в том, что с помощью функции $(«div»).click(функция… в разделе script не будет возвращен идентификатор из div, сгенерированного методом ajax get (div id =»fashion_content»), а только другие («мода», «контейнер», «тест»).
С другой стороны, когда я помещаю функцию jquery после div в ajax.php файл следующим образом это работает:

 <?php
if($_GET['fashion'])
{
   ?><div id="random">This is a random text</div>

     <script>
           $("div").click(function()
           {
             var identification = $(this).attr("id");
             alert(identification);
           });
     </script>
    <?php 
}
?>
  

Я думаю, мне нужно перезагрузить скрипт (или только функцию) после завершения события get. Но как?

Ответ №1:

попробуйте

 $("div").live('click',function()
  {
    var identification = $(this).attr("id");
    alert(identification);
});
  

кроме того, это может выйти за рамки $(document).ready() для ускорения выполнения

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