Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    336

    Plugin Jquery e parametri dinamici

    Ciao, ho un plugin jquery che ha un parametro che a sua volta accetta altri parametri.
    Vorrei rendere dinamico uno di questi parametri, ma se metto il nome della variabile non funziona.

    Che sintassi devo seguire?

    codice:
    var valoredinamico=this.valore;
    $.plugin({
    							
    							'parametro': {
    			   	 				'proprietà1': 'valore1',
    								'proprietà2': valoredinamico}
    							}
    						});

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    La sintassi mi pare corretta avevo fatto anch'io qualcosa di simile, te la posto dimmi se è ciò che volevi fare...

    var boolNome = true;
    var boolCognome = true;
    var boolCodFisc = false;
    var boolSesso = true;
    var boolStatoNasc = true;
    var boolLuogoNasc = true;
    var boolProvNasc = true;
    var boolData = true;
    var boolCell = false;
    var boolEmail = true;

    $("#registrationForm").validate({
    errorLabelContainer: "#errorContainer",
    wrapper: "li",
    onsubimt: true,
    onfocusout: false,
    onclick:false,
    onkeyup:false,
    rules: {
    username: {required: true},
    nome: {required: boolNome},
    cognome: {required: boolCognome},
    codFisc: {required: boolCodFisc, cfitaly: true},
    sesso: {required: boolSesso},
    statoPrivato: {required: boolStatoNasc},
    comunePrivato: {required: boolLuogoNasc},
    provinciaPrivato: {required: boolProvNasc},
    dataFull: {requiredData: boolData, dateITA: true},
    telefono: {required: boolCell, phone2: true},
    email: {required: boolEmail, email: true}
    },

    il telefono, per esempio, accetta come valore per la proprietà required la variabile boolCell

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    336
    Grazie della risposta, in effetti, il problema non era nella sintassi.
    Credevo che i sottoparametri influissero, ma non è per quello che non va.

    In pratica vorrei parametrizzare Fancybox per mostrare più video flv con lo stesso script.

    Di base lo script che ho scritto è così: nel link punto al player swf e da script gli passo la variabile clipPath col percorso del file flv.

    Con un solo filmato funziona:

    codice:
    <script type="text/javascript">	
    	$(document).ready(
    		function()
    		{		
    			$(".video").fancybox({
    				'padding': 0,
    				'autoScale': false,
    				'transitionIn': 'none',
    				'transitionOut': 'none',
    				'width': 320,
    				'height': 240,
    				'type': 'swf',
    				'swf': {
    					'FlashVars': 'clipPath=video/miovideo.flv'
    				}
    			});
    		}
    	);
    </script>
    codice:
    Miovideo

    Quello che però mi piacerebbe fare è poter mettere più link nella stessa pagina, del tipo:

    codice:
    <script type="text/javascript">	
    	$(document).ready(
    		function()
    		{		
    			$(".video").fancybox({
    				'padding': 0,
    				'autoScale': false,
    				'transitionIn': 'none',
    				'transitionOut': 'none',
    				'width': 320,
    				'height': 240,
    				'type': 'swf',
    				'swf': {
    					'FlashVars': 'clipPath=video/' + $(this).attr('id')  + '.flv'
    				}
    			});
    		}
    	);
    </script>
    oppure:

    codice:
    <script type="text/javascript">	
    	$(document).ready(
    		function()
    		{	
    			var nomeFile;	
    			$(".video").click(function() {
    				nomeFile ='clipPath=video/'+$(this).attr('id');
    				$.fancybox({
    					'padding': 0,
    					'autoScale': false,
    					'transitionIn': 'none',
    					'transitionOut': 'none',
    					'width': 320,
    					'height': 240,
    					'type': 'swf',
    					'swf': {
    						'FlashVars': nomeFile
    					}
    				});
    			});
    		}
    	);
    </script>

    Per quest'ultimo mi sono ispirato all'esempio 4 a questo link:
    http://fancybox.net/blog

    Ma non riesco a farlo andare in nessun modo...

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Quello che però mi piacerebbe fare è poter mettere più link nella stessa pagina, del tipo:

    codice:
    <script type="text/javascript">	
    	$(document).ready(
    		function()
    		{		
    			$(".video").fancybox({
    				'padding': 0,
    				'autoScale': false,
    				'transitionIn': 'none',
    				'transitionOut': 'none',
    				'width': 320,
    				'height': 240,
    				'type': 'swf',
    				'swf': {
    					'FlashVars': 'clipPath=video/' + $(this).attr('id')  + '.flv'
    				}
    			});
    		}
    	);
    </script>
    Questo caso mi sembra corretto... che errore ti da? sulla console errori di firefox vedi qualcosa che puo interessare?

    oppure:

    codice:
    <script type="text/javascript">	
    	$(document).ready(
    		function()
    		{	
    			var nomeFile;	
    			$(".video").click(function() {
    				nomeFile ='clipPath=video/'+$(this).attr('id');
    				$.fancybox({
    					'padding': 0,
    					'autoScale': false,
    					'transitionIn': 'none',
    					'transitionOut': 'none',
    					'width': 320,
    					'height': 240,
    					'type': 'swf',
    					'swf': {
    						'FlashVars': nomeFile
    					}
    				});
    			});
    		}
    	);
    </script>
    Per quest'ultimo mi sono ispirato all'esempio 4 a questo link:
    http://fancybox.net/blog

    Ma non riesco a farlo andare in nessun modo... [/QUOTE]

    Anche in questo non vedo grossi problemi a parte il ".flv" mancante alla fine...

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    336
    L'errore dell'flv è di trascrizione, invece di copiare dalla pagina ho copiato e modificato l'esempio precedente direttamente nell'editor del forum.

    La console non restituisce errori.

    Nel primo caso, lo script va, mi apre il lightbox col player, ma non carica il filmato, come se non gli arrivasse il percorso.

    Nel secondo caso, non va neanche il lightbox, o meglio, lo apre, ma poi subito reindirizza a clip.swf.
    Se premo il pulsante indietro del browser mi ritrovo il lightbox aperto.


    Per questo, nel primo post chiedevo se sbagliavo qualcosa nella sintassi, perchè, nel primo caso, è come se non sentisse $(this).attr('id') da quella posizione.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Per vedere se il percorso è corretto metti un alert dopo di
    nomeFile ='clipPath=video/'+$(this).attr('id')+'.flv';
    alert(nomeFile);

    cosi prima di aprire il lightbox vedi il percorso... piu di cosi non so aiutarti, ho provato con due immagini e il procedimento funziona... ma con 2 filmati potrebbero esserci altri problemi che non conosco...

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    336
    Avevo già fatto la prova, ma ho risolto in altro modo, appena possibile posto la soluzione.
    Intanto grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.