JavaScript - funcion no me funciona ayuda

 
Vista:
Imágen de perfil de Luis
Val: 17
Ha aumentado su posición en 3 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

funcion no me funciona ayuda

Publicado por Luis (7 intervenciones) el 08/10/2016 17:15:12
Hola, estoy aprendiendo jvascript / jquery y estaba intentando incorporar un script para un slide sencillo, pero no se xque no me funciona. El código es cortito asi que lo posteo :

En mi index.html :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<!DOCTYPE HTML>
<html LANG="es">
<head>
	<meta chrset="UTF-8">
	<title>Slider sencillo</title>
       <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script src="jquery-3.1.0.js" type="text/javascript"></script>
       <link href="css/style.css" rel="stylesheet" type="text/css" />
 
        <script type="text/javascript">
		var i = 0;
		$(document).on("ready", main);
 
		function main(){
			var control = setInterval(cambiarSlider, 3000);
		}
 
		function cambiarSlider(){
			i++;
			if(i == $("#slider img").size()){
				i = 0;
			}
			$("#slider img").hide();
			$("#slider img").eq(i).fadeIn("medium");
		}
	</script>
	<style type="text/css">
		#container{
			margin: 100px auto;
			width: 830px;
		}
		#slider{
			height: 400px;
		}
		#slider img{
			display: none;
		}
		#slider img:nth-child(1){
			display: block;
		}
	</style>
</head>
<body>
	<div id="container">
		<div id="slider">
			<img src="images/sl006.jpg">
			<img src="images/sl002.jpg">
			<img src="images/sl003.jpg">
			<img src="images/sl001.jpg">
		</div>
	</div>
</body>
</html>


En mi style.css :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
*{
    margin: 0;
    padding: 0;
}
 
body {
	font: 1em/100% Helvetica, Arial sans-serif;
}
 
a {
	color: #669;
	texto-decoration: none;
}
 
#container{
	margin: 100px auto;
	width: 830px;
     }
#slider{
		height: 400px;
		}
 
#slider img{
			display: none;
		}
 
#slider img:nth-child(1){
			display: block;
		}

Alguna idea de que puede ser ?? Gracias !
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

funcion no me funciona ayuda

Publicado por xve (2100 intervenciones) el 08/10/2016 20:09:44
Hola Luis, yo lo he probado y me ha funcionado perfectamente!!!
Lo unico que he hecho ha sido cambiar la url de las imágenes y la url del jquery, que yo tengo la versión 2.1.1 descargada en la carpeta, pero eso no creo que tenga nada que ver.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Luis
Val: 17
Ha aumentado su posición en 3 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

funcion no me funciona ayuda

Publicado por Luis (7 intervenciones) el 10/10/2016 20:05:17
Gracias xve .. estuve todo un día trasteando con ese código ! hasta pensé que había algo que no veía o entendía ...
Finalmente buscando una alternativa encontré otro código un tanto más sencillo que traté de adaptar ..... y me algo parecido ...
Al final del día se me ocurrió justamente eso ... cambié la cadena de conexión pensando que no podía ser eso ... y si ... , que extraño que suceda asi teniendo en cuenta que las nuevas versiones deberían soportar las antiguas y perfeccionarlas .. me quedé con ese pensamiento.
Con la versión la version que tengo 3.1 no funciona ni este ni otro código de prestaciones similares.

Hace poco que estoy aprendiendo jquery y más allá que accedo contínuamente al manual o a apijquery para aclarar dudas, a veces estas cosas me pierden jaja.

Aprovecho y te hago unas consultas breves :

1) Suponiendo que tengo el código de arriba que no funciona con la libreria nueva, y aparte tambien un .js con otras funciones creadas antes pero con la libreria 3.1, al cargar ambas librerias puedo tener inconvenientes ?

2) Finalmente usé el siguiente código ( con la versión nueva al llegar a la 4ta imagen comenzaba a fallar ! ) :

index.html :
1
2
3
4
5
6
7
8
9
10
<div id=contenedor00>
        <div class="slide">
            <figure>
                <img class="img1" src="images/sl006b.jpg" />
                <img class="img2" src="images/sl002b.jpg" />
                <img class="img3" src="images/sl003b.jpg" />
                <img class="img4" src="images/sl001b.jpg" />
            </figure>
        </div>
</div>

Mi css :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#contenedor00 {
	max-width: 1240px;
    min-width: 240px;
    min-height: 215px;
	margin: 0px auto;
    text-align: center;
    overflow: hidden;
}
 
.slide{
    text-align: center;
    margin: 0 auto;
	max-width: 1240px;
    height: 300px;
    position: relative;
/*    border: 1px solid #000;*/
    clear: both;
}
 
.slide img{
    position: absolute;
    left: 0px;
    max-width: 100%;
    max-height: 300px;
}
 
.slide .img2, .slide .img3, .slide .img4 {
    display: none;
}
 
figure{
    margin: 0;
}

Mi .Js :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//intervalo tiempo cambio img slide, 5 segundos, se llama a la función "avanzaSlide()"
setInterval('avanzaSlide()',7000);
//array con las clases para las diferentes imagenes
var arrayImagenes = new Array(".img1",".img2",".img3",".img4");
console.table(arrayImagenes);
//variable que nos permitirá saber qué imagen se está mostrando
var contador = 0;
 
//hace un efecto fadeIn para mostrar una imagen
function mostrar(img){
	$(img).ready(function(){
		$(arrayImagenes[contador]).fadeIn(1500);
		console.log("mostre")
	});
}
 
//hace un efecto fadeOut para ocultar una imagen
function ocultar(img){
	$(img).ready(function(){
		$(arrayImagenes[contador]).fadeOut(1500);
		console.log("oculte")
	});
}
 
//función principal
function avanzaSlide(){
	//se oculta la imagen actual
	ocultar(arrayImagenes[contador]);
	//aumento el contador en una unidad
	contador = (contador + 1) % 4;
	//mostramos la nueva imagen
	mostrar(arrayImagenes[contador]);
}

Tengo alguna manera de lograr que al finalizar de mostrar la 4ta imagen me cambie el contenido del DIV slide por un html que se vea con fadein ?


Gracias xve !!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

funcion no me funciona ayuda

Publicado por xve (2100 intervenciones) el 10/10/2016 23:31:01
Hola Luis, sobre la pregunta de los jquery, de tener los dos activos, la verdad es que nunca he utilizado la versión 3, no tengo muy claro que ventajas o desventajas trae... no te se decir.

Sobre lo de aplicacar un html al finalizar, la verdad es que no hay problema, se puede hacer, sin problema, ya que no es mas que cambiar un estilo... el estilo img4 por ejemplo, podría ser un <div> en vez de un <img> con código html... sin problema!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Luis
Val: 17
Ha aumentado su posición en 3 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

funcion no me funciona ayuda

Publicado por Luis (7 intervenciones) el 10/10/2016 23:43:57
ahh ok, buenísimo , lo pruebo . Gracias !
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar