Mirosław Sadowski właściciel, zpo grim
Temat: Jquery na stronie zmodyfikowanej przez javascript
Witam!Zrobiłem stronicowanie wyników wyszukiwarki w ten sposób , że:
- wszystkie wyniki za jednym razem ściągam z bazy i przez PHP umieszczam w skrypcie - każdy wynik jako instrukcja js.
- za pierwszym otwarciem strony wyniki (20) są wyświetlone przez kod HTML strony.
- następne wyświetlam po 20 za pomocą js
for(var i=(nr_str-1)*20;i<(nr_str-1)*20+reszta;i++){
var wstep = '<div class="atom"><div class="div_etykiety"><span class="nazwa_etykiety">'+changeBass(typ[i])+'</span></div><div class="opis_linku">';
var tytulek = '<a href="'+linek[i]+'"><span class="tytul_linku">'+tytul[i]+'</span></a><br />';
var courier = '<span class="fragment_tresci courier">';
var courier = '<span class="fragment_tresci">';
var stopka = '</span><span class="stopka_linku"><ul class="lista_stopki"><li class="element_listy_stopki">Odsłon 30</li><li class="element_listy_stopki">User Mirek</li><li class="element_listy_stopki">Dodaj do </li></ul></span>';
var srodek = '<span class="link"><a href="'+linek[i]+'">'+linek[i]+'</a></span><span class="fragment"></span>';
var koniec = '</div><div class="obrazek_plyty"><img width="0" height="0" src="plyty/1-1.jpg" /></div></div>';
atom=wstep+tytulek+courier+srodek+stopka+ koniec;
panel = panel + atom;
}
$('#wyniki_panel_lewy').replaceWith(panel);
gdzie zmienna panel zawiera nowy kod HTML w divie o klasie .atom
stronicowanie działa super ale...
I teraz problem.
Każdy z wyników jest rozwijany przez jquery,
$(function(){
var tabulatura;
$('.opis_linku').hover(function(e){
ts=$(this);
hrefik=ts.children('a').attr('href');
if(hrefik.substr(0,4)=='tabs'){
pattern = /\/([0-9]+)$/;
matched = pattern.exec(hrefik);
idek = matched[0].substr(1);
load('http://guitar.ly/ajax_pobierz_fragmenty.php?Idek='+idek, function(xhr) {
var response = JSON.parse(xhr.responseText);
tabulatura=response.Tabulatura;
ts.children('span').children('.fragment').html(tabulatura);
});
}; }, function(){
ts.children('span').children('.fragment').html('');
}); //koniec hover
});
(funkcji load nie zamieszczam.)
ale działa tylko na pierwszej stronie stworzonej "klasycznie", nie działa na stronie jakby wirtualnej zmodyfikowanej przez js. Dla sprawdzenia jako pierwszą instrukcję za $().hover umieściłem alert i nie działa.
Czy da się to w ogóle zrobić?
Czy strona utworzona przez js jest dla jquery widoczna?
Dzięki za każdą konstruktywną radę.Mirosław Sadowski edytował(a) ten post dnia 30.07.11 o godzinie 01:48