Snažím sa iniciovať cyklus JQuery na externom obsahu HTML načítanom pomocou Ajaxu, ale zdá sa, že to nefunguje:
$(".container").load("step2.html", function() {
$.fn.cycle.defaults.autoSelector = ".cycle-slideshow";
});
html je nasledujúci:
<div class="cycle-slideshow second-prize-slider" data-cycle-manual-speed="2000" data-cycle-slides="p" data-cycle-timeout=5000 >
<p>Jetzt<br />mitmachen & <br />gewinnen</span></p>
<p >Täglich<br>mitspielen & <br> Gewinnchance<br> steigern!</p>
</div>
odpovede:
4 pre odpoveď č. 1Stačí zavolať cycle
ručne vo vašom spätnom volaní:
$(".container").load("step2.html", function() {
$(".cycle-slideshow").cycle();
});
http://jquery.malsup.com/cycle2/api/
1 pre odpoveď č. 2
Áno, funguje len ak pridáte $
symbol v písmene a jQuery(document).ready(function($)
a urobte z vašich funkcií globálne volanie vo vašom ajax volania:
jQuery(document).ready(function($) {
window.script_cycle = function() {
$(".cycle-slideshow").cycle();
}
// the function below if you want to add or change some attributes to your cycle
window.cycle_attr = function() {
$(".cycle-slideshow").cycle({
fx: "fade",
speed: 1500,
});
}
});
JQuery(document).ready(function() {
$.ajax({
url: "http://yoururl.com",
data: { param : value }, // if youre using http://yoururl.com?param=value
success: function(data){
script_cycle(); // global function from previous document.ready to be called here
}
});
// if youre using load same procedure here
$(".container").load("step2.html", function() {
script_cycle();
});
});
Zdá sa, že je to chyba z pluginu potreba pre $ v dokumente pripravený, ale pomocou tohto postupu pracoval pre mňa, na zdravie !.