| 
 Удалить <script> загруженный jqeru LOAD Здравствуйте. Есть проблема. Загружаю с помощью jqeru load div в котором находится <script>. После чего скрипта в диве нет, но он работает. Где он висит и как его удалить? 
$("#fo_logo").load('../....../...../xxx.php',{},function(data){},'html');
содержимое php файла 
echo <<<EOD
<div id="otvet">
	function xxx(){
		alert("1");
	}
</div>
EOD;
Вообще задача такая - необходимо с помощью jqeru load загрузить форму с скриптом js. После чего форму закрыть и удалить этот скрипт чтоб не висел. | 
| 
 Цитата: 
 | 
| 
 $("#fo_logo").load('../xxx/owner/xxx.php',{},addd,'html'); | 
| 
 Nitro26, Мне нужно реально на скрипт глянуть | 
| 
 
<?php
echo <<<EOD
<div id="otvet">
<script  id="sample">
$("#fo_add").click(function(){var scrt = document.getElementById('sample');
										alert(scrt);
										});
</script>
</div>
EOD;
?>
 | 
| 
 
$("#fo_add").click(function(){var scrt = document.getElementById('sample');
      alert(scrt);
});
Замените данный скрипт на такой: 
$("#fo_add").bind('click',function(){
      var scrt = document.getElementById('sample');
      alert(scrt);
});
Тогда отключение будет выглядет так 
<script>
$("#fo_add").ubind('click');
</script>
 | 
| 
 Спасибо. Вот только интересно а если у меня там будет 10 или 20 событий назначено на разные элементы, это мне их придется все отключать? И еще хочется узнать где сам скрипт живет после load? | 
| 
 Nitro26, Отключать можно комбинированным селектором, через запятые $("elem1,elem2, elem3, elem4").ubind('click'); | 
| 
 Цитата: 
 как работает .ubind с памятью - не выяснял, минималистически, - возможно заменяет функцию на пустую | 
| 
 Deff, ok, а если это он-лайн игрушка, с переходами по локациям, постоянным тырканием в инвентарь и т.д. Как чистить тогда? Или забить и сделать переходы с перезагрузкой страницы? | 
| 
 Serg_pnz, Ну есть две идеи: 1. Память периодически чистица сама "мусорщиком", большие объекты удалять принудительно через delete 2. Создавать динамический пустой iframe и выполнять основные деяния в нём(засовываем скрипты и необходимый контент внутрь), удаляя или пересоздавая новый фрейм для новых повторных действий ассинхронный обмен с iframe удобно вести через LocalStorage + cобытие(к примеру программный клик кнопки | 
| 
 Deff, у меня при переходе по локациям контент внутри окна постоянно перезаписывается (подгружается динамически с полной заменой содержимого), правильно ли я думаю, что прежде, чем динамически подгрузить новый скрипт (и контент), надо найти все текущие элементы в контейнере и снести с них обработчики? | 
| 
 Цитата: 
 | 
| 
 Обработчики именно live ставлю, точнее $(this).off().on() А контент меняю 
$('#globDIV').html(newcontent)
newcontent прилетает либо с json (тут расспихиваю контент, ставлю им обработчики), либо load (если скрипт заранее известен) | 
| 
 Цитата: 
 В принципе, я редко пользую новейшие библиотеки jQuery(нет доступа к движку) и работаю по старинке bind - ubind Хотя имхо проще при переподгружаемом контенте и для автоудалении обработчика ставить типовые типо $("Button").click(function () { При изъятии или замене объекта даже на с тем же самым cелектором - обработчик автоудалится с изъятых и новых элементов с данным селектором Вообщем такие вот варианты вместе с Вашими | 
| 
 Цитата: 
 | 
| 
 Цитата: 
 Да, - нун тестировать скорость перерисовки body для конкретики, *у меня проекты текстовые с легкой графикой) | 
| 
 Deff, спасибо, спасибо, спасибо! Ну а плюсик "вобла" не дает поставить)) Я ж пишу за хобби, возможно скоро представлю игрушку в карты, но именно как самому хотелось: никаких перезагрузок, всё "по-правильному". | 
| 
 И еще один способ стоит упомянуть - загрузить и сразу выполнить  
$.getScript('js/room.js');
 | 
| 
 Serg_pnz, Ну без jQuery ранее, практически вызов всех обработчиков ставили в тег А функция одна для всех Аякс подгрузок тегов с данным вызовом. Сейчас часто впихивают контент скрипта в скрытый теxtаrеа на подгружаемой странице, затем создают новый элемент script и перезаписыват в body, предварительно всунув контент. (Обычно фунцией с именем и автозапуском, чтобы легко её удалить после отработки | 
| Часовой пояс GMT +3, время: 12:40. |