HTML - Duda js

   
Vista:

Duda js

Publicado por cesar (9 intervenciones) el 01/03/2016 18:32:51
Hola a tod@s, estoy siguiendo unos tutoriales y quiero poner en una web dos elementos:
- Un slider y debajo unos botones de control
- Que el menú sea responsive.
El problema es que en los dos tutoriales me dan un main.js y si los pongo juntos, aunque renombre uno de ellos se anulan los dos. No alcanzo a entender porque es y por eso necesito de vuestra sabia ayuda.
Alguien me puede ayudar? Como puedo unir los dos main para que no se anulen entre ellos? Gracias de antemano.
Os dejo los dos js:

El del menú responsive:

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
// Responsive Menu
 
var $j = jQuery.noConflict();
 
$j(function () {
$j('#cssmenu').slicknav();
});
 
var $optionSets = $j('#portfolio .folio-filter'),
$optionLinks = $optionSets.find('a');
$optionLinks.click(function(){
var $this = $j(this);
// don't proceed if already selected
if ( $this.hasClass('selected') ) {
return false;
}
var $optionSet = $this.parents('.folio-filter');
$optionSet.find('.selected').removeClass('selected ');
$this.addClass('selected');
// make option object dynamically, i.e. { filter: '.my-filter-class' }
var options = {},
key = $optionSet.attr('data-option-key'),
value = $this.attr('data-option-value');
 
// parse 'false' as false boolean
value = value === 'false' ? false : value;
options[ key ] = value;
if ( key === 'layoutMode' && typeof changeLayoutMode === 'function' ) {
changeLayoutMode( $this, options );
} else {
// otherwise, apply new options
$container.isotope( options );
}
return false;
});
}
 
});
 
$j(window).bind('resize', function(e){
window.RT = setTimeout(function() {$j('#folio').isotope('reLayout'); }, 800);
});




Y aquí el del Slider:

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
/**
* Titulo: Crear un slider
$(function() {
var SliderModule = (function() {
var pb = {};
pb.el = $('#slider');
pb.items = {
panel: pb.el.find('li')
}

// Variables Necesarias
var SliderInterval,
currentSlider = 0,
nextSlider = 1,
lengthSlider = pb.items.panel.length;


// Funcion para controles del slider
var changePanel = function(id) {
clearInterval(SliderInterval);
var panels = pb.items.panel,
controls = $('#slider-controls li');

// Comprobamos el ID
if (id >= lengthSlider) {
id = 0;
} else if (id < 0) {
id = lengthSlider-1;
}

// Efectos
controls.removeClass('active').eq(id).addClass('ac tive');
panels.eq(currentSlider).fadeOut('slow');
panels.eq(id).fadeIn('slow');

// Actualizamos nuestros datos
currentSlider = id;
nextSlider = id+1;

// Reactivamos el slider
SliderInit();
}


return pb;
}());
SliderModule.init({duration: 4000});
});
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

Duda js

Publicado por xve (1178 intervenciones) el 01/03/2016 20:03:39
Hola Cesar, simplemente cámbiale el nombre u uno de los dos... no hay problema.
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

Duda js

Publicado por cesar (9 intervenciones) el 01/03/2016 20:55:49
Muchas gracias por responder, pero como he dicho ya lo he probado. aunque les ponga nombres diferentes, cuando pongo los dos en la misma carpeta de "js" se anulan y no se muestran ni los controles ni el menú responsive.
He provado de dejar al primero el nombre "main" y al otro "menu". Y en el index.html he añadido lo siguiente:

<script src="js/main.js"></script>
<script src="js/menu.js"></script>

Pero nada, no hay manera.
Help please.

Muchas 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
Imágen de perfil de xve

Duda js

Publicado por xve (1178 intervenciones) el 02/03/2016 07:54:22
En principio si no hay funciones que se llamen igual...

Has revisado el inspector (F12) del navegador para ver que error te da?
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

Duda js

Publicado por arck (10 intervenciones) el 03/03/2016 11:38:21
Como indica xve debería de funcionar, en el peor de los casos prueba a meter todo en un js y pon el link a ese solo.

¿Tienes el link de jquery puesto en la pagina?
Si puedes enviar el html puedo hacer pruebas y decirte alguna opción mas que se me ocurra.
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

Duda js

Publicado por cesar (9 intervenciones) el 03/03/2016 12:14:15
Muchísimas gracias a los dos, de momento estoy haciendo pruebas en local. Ya os iré informando.
Un saludo y 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

Duda js

Publicado por cesar (9 intervenciones) el 03/03/2016 19:36:13
Estoy empezando de nuevo y no deja de ser curioso.

Si coloco los dos .js solo me funciona el que se llame "main" Si renombro a los dos con otro nombre no me funciona ninguno. Si pongo a uno main y a otro main2 solo me funciona el que se llama main.

Como puede ser que solo funcione el que se llame main? Eso lo indica en algún sitio? Yo en el index.html he puesto la funcion:
<script src="js/main2.js"></script> (o main.js o control.js o menu.js....)
vamos, el nombre que haya cambiado bien en cada situación.

Un saludo y 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

Duda js

Publicado por deo (1 intervención) el 03/03/2016 22:51:37
/** ... sin cerrar... todo el .js es un comentario
Tienes que poner algo como: ' */ '

con F12: marca un error en linea 34/35 de primer archivo: SyntaxError: expected expression, got '}'
return false;
});
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

Duda js

Publicado por cespal (9 intervenciones) el 03/03/2016 23:11:48
Hola deo, muchas gracias por responder. Lo curioso es que tal i como están los .js funcionan, siempre que no estén juntos y se llamen main.js
El segundo .js que por ejemplo dices es un comentario si lo dejo con el nombre main.js funciona perfectamente. Y el primero, que dices da error, también funciona perfectamente si se llama main.js y está sólo.
Yo ya no entiendo nada...Y no sé quequé más probar...
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

Duda js

Publicado por xve (1178 intervenciones) el 04/03/2016 07:45:17
Estaría bien que incluyeras tus archivos para que podamos verlos y probarlos...
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

Duda js

Publicado por cesar (9 intervenciones) el 04/03/2016 09:16:47
Hola, he subido la web de prueba que estoy haciendo. Para que no pese mucho está sin imagenes ni logo.

La cosa es que si vais a la carpeta js veréis dos archivos:

- Uno es el menu.js y se refiere a que el menu sea responsive cuando la web se hace más pequeña.
- El otro se llama controles y se refiere a los controles que salen debajo del slide.

En el index.html, en las líneas 115 y 116 se hace referencia a estos .js

La cosa es que ahora que no se llaman "main" no aparece ninguno, pero al que le llaméis "main", aparecerá. Y claro, los dos "main" no pueden llamarse. Por favor, alguien sabe porque pasa esto?

(Ya abusando de vuestra amabilidad y sabiduría...porque el footer no se queda al final de la web?)

Muchísimas 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

Duda js

Publicado por DAVID (94 intervenciones) el 29/03/2016 08:45:31
Hola buenas,
y porque no pruebas con bootstrap?? Con ese framework html5/Css tienes todo lo que necesitas y es muy facil de usar.

Un saludo,
David
estudio de diseño grafico
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