Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   JQUERY и innerHTML (https://javascript.ru/forum/events/46621-jquery-i-innerhtml.html)

mnem0nik@mail.ru 17.04.2014 00:22

JQUERY и innerHTML
 
в html-коде, вставленном через свойство innerHTML не работают js-функции, объявленные до момента вставки этого кода в DOM

суть вопроса.....

в файле test.php есть следующий код:

/* функция выводит всплывающую подсказку при наведении курсора на блок с id="p1" */
$("#p1").tipTip({
delay: 1,
edgeOffset:10,
fadeIn:1,
fadeOut:1,
defaultPosition:"bottom",
maxWidth:"250px"	
});

<div id="p1">

</div>


а в файле tmp.html есть такой код:
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET','test.php',false);
xmlhttp.send(null);
document.getElementById('p2').innerHTML=xmlhttp.responseText;

<div id="p2">
</div>


так вот есть после вставка через innerHTML функция jquery не работает.. я начинающий по части js и jquery((( может кто сталкивался с чем-то подобным - подскажите куда копать

Sweet 17.04.2014 01:25

mnem0nik@mail.ru, если используешь jQuery, то используй полностью. Не нужно выпендриваться всякими XMLHttpRequest. Для вставки верстки есть метод .html. Пользуйся им. Потому что эта мешанина из чистого js и jQ - ваще писец1

mnem0nik@mail.ru 17.04.2014 02:02

Цитата:

Сообщение от Sweet (Сообщение 308032)
mnem0nik@mail.ru, если используешь jQuery, то используй полностью. Не нужно выпендриваться всякими XMLHttpRequest. Для вставки верстки есть метод .html. Пользуйся им. Потому что эта мешанина из чистого js и jQ - ваще писец1

ну да, есть такое ))) спасибо, попробую :-)

mnem0nik@mail.ru 17.04.2014 02:16

видимо так не получится - здесь XMLHttpRequest не просто верстает. он выполняет пхп-код

Sweet 17.04.2014 02:29

Цитата:

Сообщение от mnem0nik@mail.ru
здесь XMLHttpRequest не просто верстает

Верстают верстальщики. XMLHttpRequest делает запрос. А внутри $.ajax - тот же XMLHttpRequest.
Цитата:

Сообщение от mnem0nik@mail.ru
видимо так не получится

Хз, о чём речь, что и почему не получится. Но суть в том, что .innerHTML игнорирует скрипты, а в методе .html эта проблема решена.


Часовой пояс GMT +3, время: 06:32.