У меня есть 2 файла javascript, включенных в всплывающее окно (простой div), сгенерированный с помощью ajax.Загрузка с загрузкой Javascript
<script type="text/javascript" src="<?php echo JS ?>pm.js"></script>
<script type="text/javascript" src="<?php echo JS ?>chat.js"></script>
При закрытии всплывающего окна и повторно открыть его, то JQuery связанные функции в двух файлах выполнить дважды.
, например
//connection
$(document).bind('connect', function() {
var conn = new Strophe.Connection('my-http-binding-url');
conn.connect(inbox.data.jid, inbox.data.pass, function(status){
inbox.connection = conn;
alert(status)
});
});
Первый раз я открываю всплывающее окно, она отображает предупреждающее сообщение: 5, что означает, что соединение успешно установлено.
Но когда я закрываю всплывающее окно и снова его открываю, он показывает мне сообщение дважды ... Я предполагаю, что код выполняется дважды, потому что он не выгружен.
вы не можете выгрузить JavaScript. Как только он будет выполнен, эффекты на dom не исчезнут, просто удалив javascript. –
Я знаю, что я должен нарушить функцию с помощью другой аффектации, например 'var connect = function() {}' или что-то вроде этого Но здесь у меня есть связанная функция, как я могу это достичь? – SmootQ
отвяжите его с помощью метода .unbind. –