$ .Cycle e dinamico contenuto dopo un evento click
-
23-09-2019 - |
Domanda
voglio applicare ciclo al blocco div con contenuti dinamici. Questo contenuto sarà generato dopo un evento click. Una volta che clicco l'immagine che sta lavorando, dopo che non funziona.
Codice:
$("div.cls img").click(function() {
.... Adding the content
$('#myDiv').cycle({
fx: 'scrollHorz',
speed: 3500,
timeout: 0, continuous: true,
pause: 1, sync: 1
});
});
HTML:
<div id="myDiv">
<div>
<a id="i1"> abc</a>
<a id="i2"> abcd</a>
<a id="i3"> abce</a>
<a id="i4"> abcf</a>
<a id="i5"> abcg</a>
<a id="i6"> abch</a>
</div>
<div>
<a id="i11"> abc1</a>
<a id="i21"> abcd1</a>
<a id="i31"> abce1</a>
<a id="i41"> abc1f</a>
<a id="i51"> abcg1</a>
<a id="i61"> abch1</a>
</div>
</div>
Soluzione
Modifica
Prova a chiamare di nuovo $.cycle()
dopo l'aggiunta di contenuti dinamici. Inoltre, utilizzare Firebug per garantire che il contenuto viene generato correttamente.
Se questo non funziona, allora sembra che si dovrà modificare il plugin ciclo di supportare in modo dinamico l'aggiunta di "scivola", o lascia la tua soluzione.
http://www.malsup.com/jquery/cycle/ :
Come funziona
Il plugin fornisce un metodo chiamato ciclo che viene richiamato su un contenitore elemento. Ogni elemento figlio del contenitore diventa un "vetrino". Opzioni controllare come e quando le diapositive sono la transizione.
Quindi, è possibile lasciare il Javascript da solo, ma il codice HTML dovrebbe apparire come segue:
<div id="myDiv">
<div>
<a id="i1"> abc</a>
<a id="i2"> abcd</a>
<a id="i3"> abce</a>
<a id="i4"> abcf</a>
<a id="i5"> abcg</a>
<a id="i6"> abch</a>
</div>
<div>
<a id="i11"> abc1</a>
<a id="i21"> abcd1</a>
<a id="i31"> abce1</a>
<a id="i41"> abc1f</a>
<a id="i51"> abcg1</a>
<a id="i61"> abch1</a>
</div>
</div>
Inoltre, non si dovrebbe mai avere più di un elemento in una pagina con lo stesso ID.