У меня есть веб-сайт с большим количеством всплывающих окон, и когда пользователь загружает всплывающее окно (через ajax), во всплывающем окне также загружается код JavaScript, я хочу, чтобы этот код JavaScript был удален при его всплывающее окно удалено.
Основной код сайта:
<body>
...
<div id="popup" style="display:none">
</div>
...
</body>
, а затем загрузчик в js файле:
$.ajax('url',{
success:function(data){
$("#popup").show().html(data);
};
});
одно из представлений, ajax позвоните и pu sh во всплывающем окне:
some html codes
<script>
$(document).on('click',function(){
console.log("document click");
});
</script>
когда пользователь закрывает всплывающее окно, я использую этот код для очистки всплывающего окна:
$("#popup").hide().html("");
, но это не так завершите событие нажатия кнопки мыши, которое было загружено, и любые функции в представлении все еще будут существовать в памяти и могут быть вызваны!
это проблема, потому что у меня много всплывающих окон, и JavaScript ест память через некоторое время, поэтому мне нужно обновить sh браузер после использования веб-сайта в течение некоторого времени, плюс события дублируются при каждой перезагрузке всплывающего окна!
Если очистить эти JS невозможно из памяти есть ли обходной путь для этого?