Witam!
Tworzę bardzo prostą stronkę z paroma podstronami. Realizuję wszystko tak, że mam parę plików html, każdy ma diva o id #content
, w którym znajduje się jego właściwa zawartość. Kiedy user kliknie na jakąś pozycję menu ajaxem ładuję zawartość tej podstrony do aktualnego contentu. Może mały fragment kodu, o co mi chodzi:
$('#nav li a').click(function() {
var toLoad = $(this).attr('href')+' #content';
$('#content').slideUp('fast',loadContent);
$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#load').fadeIn('fast');
window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#content').load(toLoad,'',showNewContent());
}
function showNewContent() {
$('#content').slideDown('normal',hideLoader());
}
function hideLoader() {
$('#load').fadeOut('normal');
}
return false;
});
No i wszystko jest pięknie, ale pojawia się problem, kiedy na stronie którą chcę załadować jest nie tylko statyczny tekst i obrazki, ale też kawałek jakiegoś javascriptu. W divie #content
mam znacznik <script>
z właściwym kodem:
$(function() {
$("#textbox p").css("display", "none");
$(".active").css("display", "block");
$(".img").click(function() {
var alt = $(this).children("img").attr("alt");
$(".active").hide("normal");
$("#"+alt).addClass("active").show("normal");
});
});
Polega on na tym, że na tej stronie jest parę obrazków, jak na jakiś klikne to ma sie pojawić wybrany paragraf tekstu...
No właśnie. Jak otworzę bezpośrednio tę stronę to wszystko działa, ale jak załaduję ją ajaxem to ten kod nie działa... W ogóle się nie wykonuje, jak dodam tam jakiegoś alerta to też nic nie wyskakuje...
Jak sobie z tym poradzić? Proszę o pomoc.
piternet