Многократная подгрузка скриптов
Допустим, у нас есть такие скрипты:
index.php <?php echo " <script src='jquery-1.11.0.js'></script> <script src='work.js'></script> <a href='' class='href1'>HREF</a><br><br> <a href='' class='hrefPlus'>HREF PLUS</a><br><br> <div class='toLoad'></div> "; ?> work.js $(document).ready(function(){ $('.href1').click(function(){ console.log('href1'); return false; }); $('.hrefPlus').click(function(){ $('.toLoad').load('get.php'); console.log('hrefPlus'); return false; }); $('.href2').click(function(){ console.log('href2'); return false; }); }); get.php <?php echo " <a href='' class='href2'>HREF 2</a><br><br> <script src='work.js'></script> "; ?> Так вот, если в get.php не добавить строчку <script src='work.js'></script>, то HREF 2 появившись в toLoad не работает как надо. Вопрос в том, если work.js будет большого размера, и подгружаться через get.php может много раз (от перезагрузки до перезагрузки страницы), то не повлияет ли это на... на что-то же это наверное должно повлиять? Кажется, что это как-то неправильно. Может быть есть другой способ? |
Цитата:
|
Спасибо.
В том примере который я указал, теперь с on() все работает правильно, но вот там, где мне надо это применить, нет. У меня там дивы со ссылкми (которые должен ловить on()) добавляются не просто через лоад, а вот так function reloadDir(idTov) { $.get('?wr=reloadDir&id='+idTov,function(data){ $('a[name^="dir"]').each(function(i){ var num = $(this).attr('name').replace('dir',''); if (num == idTov) $(this).html(data); }); }); } Может ли такой способ быть проблемой? На существующие и вновь добавленные дивы ранее стоял ховер, теперь я поменял его на $('body').on('mouseenter'... и все осталось как было до переделки на on(), но вот клик, что-то теперь никак не ловится. |
jk888,
информации недостаточно. и где click в вашем коде? об остальном нужно догадаться? |
Видимо дело было в маршруте.
Там где раньше работало $(".admRed a").click(function(){ пришлось сделать так $('.toLoad').on('click', 'table.admRed tr td a', function(){ |
Часовой пояс GMT +3, время: 21:16. |