У меня много кода, и я хотел бы не публиковать все это здесь, но если мне нужно, я сделаю это или сделаю что-то похожее.
Моя проблема в том, что у меня есть скрытый div, в который я загружаю страницу (с помощью load ()), а затем скрываю (с помощью fadeIn ()). Когда приходит время убрать этот div, я загружаю пустую страницу в div, а затем исчезаю. Я протестировал пустую страницу, поместив в нее предупреждение javascript, и она действительно загружается, но Javascript, который я загрузил в div на первой странице, все еще работает. Этот Javascript теперь принадлежит родительской странице? Есть ли способ разгрузить его, чтобы он больше не работал или не работал? Мне нужно позже снова загрузить страницу с другим динамическим содержимым, и все еще работающий Javascript конфликтует с тем же Javascript, который загружается снова. И снова.
Надеюсь, это описание понятно. Я предполагаю, что моя проблема, вероятно, довольно проста и связана с иерархиями, которые мне только предстоит понять.
Спасибо!
------------- edit
Вот Javascript на загруженной странице. Все классы и идентификаторы, на которые он ссылается, существуют на загруженной странице. (код адаптирован из поведения табуляции, кодируемого http://www.ilovecolors.com.ar/)
//array to store IDs of our tabs
var tabs = [];
//index for array
var ind = 0;
//store setInterval reference
var inter = 0;
//change tab and highlight current tab title
function change(stringref){
//hide the other tabs
jQuery('.tab:not(#' + stringref + ')').hide();
//show proper tab, catch IE6 bug
if (jQuery.browser.msie && jQuery.browser.version.substr(0,3) == "6.0")
jQuery('.tab#' + stringref).show();
else
jQuery('.tab#' + stringref).fadeIn(200);
//clear highlight from previous tab title
jQuery('.htabs a:not(#' + stringref + 't)').removeClass('select');
//highlight currenttab title
jQuery('.htabs a[href=#' + stringref + ']').addClass('select');
}
function next(){
alert("change");
//call change to display next tab
change(tabs[ind++]);
//if it's the last tab, clear the index
if(ind >= tabs.length)
ind = 0;
}
jQuery(document).ready(function(){
//store all tabs in array
jQuery(".tab").map(function(){
tabs[ind++] = jQuery(this).attr("id");
})
//set index to next element to fade
ind = 1;
//initialize tabs, display the current tab
jQuery(".tab:not(:first)").hide();
jQuery(".tab:first").show();
//highlight the current tab title
jQuery('#' + tabs[0] + 't').addClass('select');
//handler for clicking on tabs
jQuery(".htabs a").click(function(){
//if tab is clicked, stop rotating
clearInterval(inter);
//store reference to clicked tab
stringref = jQuery(this).attr("href").split('#')[1];
//display referenced tab
change(stringref);
return false;
});
//start rotating tabs
inter = setInterval("next()", 3500);
});