Foros del Web » Programando para Internet » Javascript » Frameworks JS »

modificar un para metro de una funcion javascript.....

Estas en el tema de modificar un para metro de una funcion javascript..... en el foro de Frameworks JS en Foros del Web. hola tengo la siguiente funcion de javascript Código: $(function(){ $.fn.supersized.options = { startwidth: 4, startheight: 3, vertical_center: 1, slideshow: 1, navigation: 1, transition: 0, pause_hover: ...

  #1 (permalink)  
Antiguo 18/03/2010, 07:35
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
modificar un para metro de una funcion javascript.....

hola tengo la siguiente funcion de javascript


Código:
$(function(){
			$.fn.supersized.options = {  
				startwidth: 4,  
				startheight: 3,
				vertical_center: 1,
				slideshow: 1,
				navigation: 1,
				transition: 0, 
				pause_hover: 0,
				slide_counter: 1,
				slide_captions: 1,
				slide_interval: 0.1  
			};
	        $("#supersize").supersized(); 
	    });
y quiero que en tiempo de "ejecucion" pueda modificar esta variable slide_interval: 0.1 su yo quiero desde un input cambiarlo como seria..


saludos
  #2 (permalink)  
Antiguo 18/03/2010, 08:18
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

QUe tal así?:

$("#supersize").options('slide_interval',0,3);
  #3 (permalink)  
Antiguo 18/03/2010, 08:36
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

Cita:
Iniciado por mayid Ver Mensaje
QUe tal así?:

$("#supersize").options('slide_interval',0,3);
hola gracias por tu respuesta mira lo que coloque..pero no funciono


Código:
$(document).ready(function(){
$("#boto").click(function(){
$("#supersize").options("slide_interval",0,3);
}
);
});
saludos
  #4 (permalink)  
Antiguo 18/03/2010, 09:05
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Proba poniendo el numero entre comillas:

,0,3

,"0,3"
  #5 (permalink)  
Antiguo 18/03/2010, 09:28
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

no tampoco me funciono asi


$(document).ready(function() {
$("#boto").click(function() {
alert('cambia');
$("#supersize").options("slide_interval","1000") ;
});
});


:( no se como hacerlo si sirve de algo este script es de un puglin de jquery ..

saludes
  #6 (permalink)  
Antiguo 18/03/2010, 12:15
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 19 años
Puntos: 281
Respuesta: modificar un para metro de una funcion javascript.....

y supersized() solo, ¿funciona? ¿Puede ser que haya un problema con ese plugin o método y no en las opciones.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #7 (permalink)  
Antiguo 18/03/2010, 12:30
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

si osea el script solito funciona, pero yo quiero que antes de que se ejecute el script yo pueda escoger la velocidad de este mismo y la variable que hace esto es esta slide_interval: , se le colocan los milisegundos .

saludos
  #8 (permalink)  
Antiguo 18/03/2010, 12:55
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Estás seguro de que pones todo en un orden logico, no?

Yo no estoy habituado a objetos, y solo estoy conjeturando, pero me llaman la atención dos cosas. Una, que en el ejemplo los valores son decimales, y luego los cambias por numeros como 1000.

Otra cosa que me llama la atención es que incluyas un document ready para hacer tu testeo (porque ya había uno. No lo estarás poniendo antes, no?). Yo lo haría así:
Cita:
$(function(){
$.fn.supersized.options = {
startwidth: 4,
startheight: 3,
vertical_center: 1,
slideshow: 1,
navigation: 1,
transition: 0,
pause_hover: 0,
slide_counter: 1,
slide_captions: 1,
slide_interval: 0.1
};
$("#supersize").supersized();
$("#supersize").options("slide_interval","0,3");

});
Pero esto lo digo basandome en lo que vi en otros objetos, no en una experiencia real.

Por que no consultas la API de jquery?
  #9 (permalink)  
Antiguo 18/03/2010, 12:57
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Aca hay muy buena documentación:
http://www.cristalab.com/tutoriales/...-jquery-c251l/

Parece que hay que jugar con .extend()
  #10 (permalink)  
Antiguo 18/03/2010, 13:13
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

hola , lo de los numero es por que estaba haciendo pruebas y coloque el que tenia en ese momento... pues ua he buscado cosas al respecto pero he tenido exito.. hay alguna forma asi:

var x= (''#velocidad').val();

$(function(){
$.fn.supersized.options = {
startwidth: 4,
startheight: 3,
vertical_center: 1,
slideshow: 1,
navigation: 1,
transition: 0,
pause_hover: 0,
slide_counter: 1,
slide_captions: 1,
slide_interval: x
};
$("#supersize").supersized();


});

pero como hago para que tome primero el valor antes de que se ejecute el scritp..

saludos
  #11 (permalink)  
Antiguo 18/03/2010, 13:46
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Tenes que pasarselo como parametro. Fijate en el tutorial que linkee.
  #12 (permalink)  
Antiguo 18/03/2010, 14:59
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: modificar un para metro de una funcion javascript.....

Código Javascript:
Ver original
  1. //Milisegundos a restar
  2. var restar = 500;
  3. //Al dar clic en algun elemento con id aumentar
  4. $('#aumentar').click( function (){
  5.     //A los milisegundos seteados resto lo que contiene la variable restar
  6.     $.fn.supersized.options.slide_interval -= restar;
  7.     //Alert solo para ver el valor modificado
  8.     alert ("slide_interval "+$.fn.supersized.options.slide_interval);
  9. });
  #13 (permalink)  
Antiguo 18/03/2010, 15:28
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

Cita:
Iniciado por mayid Ver Mensaje
Tenes que pasarselo como parametro. Fijate en el tutorial que linkee.
voy leer a ver que talll

Cita:
Iniciado por Dany_s Ver Mensaje
Código Javascript:
Ver original
  1. //Milisegundos a restar
  2. var restar = 500;
  3. //Al dar clic en algun elemento con id aumentar
  4. $('#aumentar').click( function (){
  5.     //A los milisegundos seteados resto lo que contiene la variable restar
  6.     $.fn.supersized.options.slide_interval -= restar;
  7.     //Alert solo para ver el valor modificado
  8.     alert ("slide_interval "+$.fn.supersized.options.slide_interval);
  9. });
hoa gracias probe loq ue me dijiste haciendo esto como prueba....

Código:
$(function(){
	$.fn.supersized.options = {  
		startwidth: 4,  
		startheight: 3,
		vertical_center: 1,
		slideshow: 1,
		navigation: 1,
		transition: 0, 
		pause_hover: 0,
		slide_counter: 0,
		slide_captions: 1,
		slide_interval: 2000 // predeterminado
	};
	$("#supersize").supersized();
	
});
$(document).ready(function() {
$("#boto").click(function() {
	$("#supersize").load("../../Controler/Ajax.php");
	$.fn.supersized.options.slide_interval -=1999;
	alert ("slide_interval "+$.fn.supersized.options.slide_interval);
	});
});

coloque 2000 que equivale a dos segundos y cuando le den click a boto se le reste 1999 y quede 1 milisegundo..... pero no funiona no se si me estoy liando mucho Xd jejeje ...

saludos
  #14 (permalink)  
Antiguo 18/03/2010, 15:44
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: modificar un para metro de una funcion javascript.....

que te trae
Código HTML:
$("#supersize").load("../../Controler/Ajax.php");
para que agregas $(document).ready(function() si ya lo tenes antes? pone el codigo asi
Código HTML:
$(function(){
    $.fn.supersized.options = {  
        startwidth: 4,  
        startheight: 3,
        vertical_center: 1,
        slideshow: 1,
        navigation: 1,
        transition: 0, 
        pause_hover: 0,
        slide_counter: 0,
        slide_captions: 1,
        slide_interval: 2000 // predeterminado
    };
    $("#supersize").supersized();
	
    $("#boto").click(function() {
        $.fn.supersized.options.slide_interval -=1999;
        alert ("slide_interval "+$.fn.supersized.options.slide_interval);
    });
});
  #15 (permalink)  
Antiguo 18/03/2010, 15:59
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

lo coloque como tu me dijste y si muestra el mensaje con la resta ....pero no cambia la velicidad de la secuencia. :((( no puede a ver otra forma de hacerlo?

saludos
  #16 (permalink)  
Antiguo 18/03/2010, 16:32
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: modificar un para metro de una funcion javascript.....

viendo el plugin vi que el setInterval cambia cuando le dan acción a botón de play/pause, anterior o siguiente, entonces

pongo, cuando le dan click a algun botón para modificar la velocidad seteo la opción slide_interval y luego genero un evento click en el botón #nextslide


modificá por esto, pero no agregue a lo que tenes, reemplazá


Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     $(function(){
  3.             $.fn.supersized.options = {
  4.             startwidth: 4,  
  5.             startheight: 3,
  6.             vertical_center: 1,
  7.             slideshow: 1,
  8.             navigation: 1,
  9.             transition: 0,
  10.             pause_hover: 0,
  11.             slide_counter: 0,
  12.             slide_captions: 1,
  13.             slide_interval: 2000 // predeterminado
  14.  
  15.                     };
  16.             $('#supersize').supersized();
  17.  
  18.             $("#boto").click(function() {
  19.                     $.fn.supersized.options.slide_interval -=1999;
  20.                     $('#nextslide').click();
  21.             });
  22.         });
  23.     </script>


baja el valor sino hace solo parpadeos jeje
  #17 (permalink)  
Antiguo 18/03/2010, 16:41
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Cita:
no puede a ver otra forma de hacerlo?
"a ver", en este caso, se escribe "haber". Viene del verbo haber, no de "ver".
  #18 (permalink)  
Antiguo 18/03/2010, 20:59
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

Muchas gracias por la leccion de ortografia jajaXd pero entonces puede haber otra forma de hacerlo..

saludos
  #19 (permalink)  
Antiguo 19/03/2010, 09:57
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Estoy leyendo la documentación, en donde dice Extendiendo el plugin...

"Hay dos opciones: La primera es usar jQuery.extend... La segunda es hacerlo sin ayuda de extend..."

Lo que me llama la atención es que ahí se habla de crear metodos. En cambio, tu plugin no contiene ningun metodo. SOlo almacena variables. COmo entendes eso vos?

Yo entiendo que falta codigo. Por favor publica el resto del codigo. Y lo vemos.
  #20 (permalink)  
Antiguo 19/03/2010, 10:05
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

Pues mira el codigo completo es el siguiente......


Código:
$(function(){
$.fn.supersized.options = {
startwidth: 4,
startheight: 3,
vertical_center: 1,
slideshow: 1,
navigation: 1,
transition: 0,
pause_hover: 0,
slide_counter: 0,
slide_captions: 1,
slide_interval: 2000 // predeterminado 2 segundos
};
$("#supersize").supersized();

$("#boto").click(function() {

$("#supersize").load("../../Controler/Ajax.php");

return false;

});
//Boton para aumentar velocidad
$("#aum").click(function() {
$.fn.supersized.options.slide_interval -=1999;
urn false;
});
});



saludos
  #21 (permalink)  
Antiguo 19/03/2010, 10:23
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Pero para que sirve? No entiendo. Solo almacena variables. Y nunca se hace uso de esas variables. Para mi que trabaja conjuntamente con un archivo .js
  #22 (permalink)  
Antiguo 19/03/2010, 10:38
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Ah! Ya veo. Es un plugin. Este: http://www.buildinternet.com/project/supersized/

Y acá esta el js que faltaba:
http://www.buildinternet.com/project...ersized.2.0.js

Voy a mirarlo y te digo.
  #23 (permalink)  
Antiguo 19/03/2010, 10:42
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

si osea es que es un puglin de jquery ...este

http://buildinternet.com/2009/05/supersized-20-full-screen-imagebackground-slideshow-jquery-plugin-w-transitions-and-controls/

saludos
  #24 (permalink)  
Antiguo 19/03/2010, 11:15
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Me leí todo el tuto. Y no se como modificar algo que está ya inicializado. Quizás te convenga reinicializar el objeto una vez que cambies los parametros.

Proba estas dos cosas (por separado):
$("#supersize").options.slide_interval = 1000;

$("#supersize").supersized("options", ({
slide_interval: 1000
});
  #25 (permalink)  
Antiguo 19/03/2010, 11:39
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

des esta forma me desaparece la barra de de pause y play:

$("#aum").click(function() {
$("#supersize").supersized("options", ({
slide_interval: 1000
})
);
return false;
});

y de la otra no me hacen


$("#aum").click(function() {
$("#supersize").options.slide_interval = 1000;
return false;
});

porfavor dime que no es imposible..

saludos..
  #26 (permalink)  
Antiguo 19/03/2010, 11:45
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: modificar un para metro de una funcion javascript.....

Y bueno, si funciona entonces agregale el resto de los parametros que necesites y usa esa manera. Necesitas slideshow: 1,? Agregalo. Lo que sea necesario.

Se trata de "reinicializar" el script, segun entiendo.
  #27 (permalink)  
Antiguo 19/03/2010, 11:54
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: modificar un para metro de una funcion javascript.....

Cita:
Iniciado por mayid Ver Mensaje
Y bueno, si funciona entonces agregale el resto de los parametros que necesites y usa esa manera. Necesitas slideshow: 1,? Agregalo. Lo que sea necesario.

Se trata de "reinicializar" el script, segun entiendo.
no tampoco funciona osea lo dije a modo de informacion ... tu dices algo como esto
Código:
$("#boto1").click(function() {
alert('hola');	
$("#supersize").supersized("options", ({
startwidth: 4,
startheight: 3,
vertical_center: 1,
slideshow: 1,
navigation: 1,
transition: 0,
slide_captions: 1,
slide_interval: 1000
})
);
return false;
});
no me ha funcionado desaparece los controles y no hace nada ....

saludos
  #28 (permalink)  
Antiguo 19/03/2010, 14:15
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 19 años
Puntos: 281
Respuesta: modificar un para metro de una funcion javascript.....

otra duda. ¿qué versión estás usando de supersized? la versión 2.0 tiene para hacer efectos:

http://buildinternet.com/2009/05/sup...-and-controls/
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #29 (permalink)  
Antiguo 19/03/2010, 15:28
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: modificar un para metro de una funcion javascript.....

pero probaste lo último que te pasé???? siento como que lo estás evitando

yo lo hago y me funciona perfectamente, hasta puse para aumentar y disminuir, no es que estoy tirando una idea


Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     $(function(){
  3.             $.fn.supersized.options = {
  4.             startwidth: 4,  
  5.             startheight: 3,
  6.             vertical_center: 1,
  7.             slideshow: 1,
  8.             navigation: 1,
  9.             transition: 0,
  10.             pause_hover: 0,
  11.             slide_counter: 0,
  12.             slide_captions: 1,
  13.             slide_interval: 2000 // predeterminado
  14.  
  15.                     };
  16.             $('#supersize').supersized();
  17.  
  18.             $("#boto").click(function() {
  19.                     $.fn.supersized.options.slide_interval -=1999;
  20.                     $('#nextslide').click();
  21.             });
  22.         });
  23.     </script>


acordate de poner
$('#nextslide').click();
luego de modificar slide_interval;

te habia preguntado que es lo que hace el load y nunca respondiste
  #30 (permalink)  
Antiguo 19/03/2010, 16:54
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 11 meses
Puntos: 65
Respuesta: modificar un para metro de una funcion javascript.....

bueno modifiqué el plugin y le agregué un parámetro para setear el valor para aumentar/disminuir que es:

modifica_interval

el valor que tienen que poner es en milisengundos, por ej si quieren que la transición desminuya o aumente de medio segundo ponen modifica_interval: 500

el valor por defecto es 1000

los id de botones que hay que poner son #bajaInterval y #aumentaInterval
#bajaInterval lo que va a hacer es que la transicion sea mas rápida y #aumentaInterval lo hace mas lento, por ahí podría ser al revés pero lo hice asi porque cambia mas rápido cuando el valor es menor, pero igual si prefieren al revés solo cambien las imagenes jeje

acá está el archivo
http://www.mediafire.com/?zyzu1otozmg

Etiquetas: funcion, javascript, modificar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:33.