Comunidad de diseño web y desarrollo en internet online

Menú Nav seleccionado y deseleccionado

Citar            
MensajeEscrito el 09 Mar 2015 10:48 pm
Muy buenas, estoy empezando con jQuery y quisiera poder realizar un responsive con un menú nav en css.
La única pega es que no sé hacer que el botón al hacer click sobre él se seleccione y el anterior se anule.
Gracias de antemano. Copio el código a continuación.

// JavaScript Document
(function($) {

$.fn.menumaker = function(options) {

var primermenu = $(this), settings = $.extend({
title: "Menu",
format: "dropdown",
sticky: false
}, options);

return this.each(function() {
primermenu.prepend('<div id="menu-button">' + settings.title + '</div>');
$(this).find("#menu-button").on('click', function(){
$(this).toggleClass('menu-opened');
var mainmenu = $(this).next('ul');
if (mainmenu.hasClass('open')) {
mainmenu.hide().removeClass('open');
}
else {
mainmenu.show().addClass('open');
if (settings.format === "dropdown") {
mainmenu.find('ul').show();
}
}
});

primermenu.find('li ul').parent().addClass('menu');

multiTg = function() {
primermenu.find(".menu").prepend('<span class="submenu-button"></span>');
primermenu.find('.submenu-button').on('click', function() {
$(this).toggleClass('submenu-opened');
if ($(this).siblings('ul').hasClass('open')) {
$(this).siblings('ul').removeClass('open').hide();
}
else {
$(this).siblings('ul').addClass('open').show();
}
});
};

if (settings.format === 'multitoggle') multiTg();
else primermenu.addClass('dropdown');

if (settings.sticky === true) primermenu.css('position', 'fixed');

resizeFix = function() {
if ($( window ).width() > 768) {
primermenu.find('ul').show();
}

if ($(window).width() <= 768) {
primermenu.find('ul').hide().removeClass('open');
}
};
resizeFix();
return $(window).on('resize', resizeFix);

});
};
})(jQuery);

(function($){
$(document).ready(function(){

$(document).ready(function() {
$("#empresa").menumaker({
title: "Menu",
format: "multitoggle"
});

$("#empresa").prepend("<div id='menu-line'></div>");

var foundActive = false, activeElement, linePosition = 0, menuLine = $("#empresa #menu-line"), lineWidth, defaultPosition, defaultWidth;

$("#empresa > ul > li").each(function() {
if ($(this).hasClass('active')) {
activeElement = $(this);
foundActive = true;
}
});

if (foundActive === false) {
activeElement = $("#empresa > ul > li").first();
}

defaultWidth = lineWidth = activeElement.width();

defaultPosition = linePosition = activeElement.position().left;

menuLine.css("width", lineWidth);
menuLine.css("left", linePosition);

$("#empresa > ul > li").hover(function() {
activeElement = $(this);
lineWidth = activeElement.width();
linePosition = activeElement.position().left;
menuLine.css("width", lineWidth);
menuLine.css("left", linePosition);
},
function() {
menuLine.css("left", defaultPosition);
menuLine.css("width", defaultWidth);
});
});
});
})(jQuery);

Por natxoll

0 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 10 Mar 2015 05:51 am

Por fede5426

20 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.