Difference between revisions of "User:Lexar/Main Page/Template:Benjas/Page.js"
m (going to see if this works) |
m |
||
Line 40: | Line 40: | ||
<div class="clearing"></div>\ | <div class="clearing"></div>\ | ||
</li>'); | </li>'); | ||
+ | }); | ||
+ | }, | ||
+ | menuButtonClick:function(mainMenu,classRemovals,objectShow) { | ||
+ | $(this).toggleClass('active'); | ||
+ | mainMenu.toggleClass('down'); | ||
+ | |||
+ | mainMenu.find('ul').removeClass('open'); | ||
+ | mainMenu.find('li h3').removeClass('down'); | ||
+ | |||
+ | classRemovals.each(function(){ | ||
+ | $(this).removeClass('down out gone'); | ||
+ | }); | ||
+ | |||
+ | objectShow.each(function(){ | ||
+ | $(this).delay(400).show(0); | ||
}); | }); | ||
}, | }, | ||
Line 46: | Line 61: | ||
accountMenu = mobileMenu.find('#account-menu'), accountList = mobileMenu.find('#account-list'), pageList = mobileMenu.find('#tab-menu'), | accountMenu = mobileMenu.find('#account-menu'), accountList = mobileMenu.find('#account-list'), pageList = mobileMenu.find('#tab-menu'), | ||
menuSearch = mobileMenu.find('#p-search'), openSearch = mobileMenu.find('#search-expand'), mainMenu = mobileMenu.find('#mobile-ul-main'); | menuSearch = mobileMenu.find('#p-search'), openSearch = mobileMenu.find('#search-expand'), mainMenu = mobileMenu.find('#mobile-ul-main'); | ||
+ | |||
ResponsiveJS.populateAccount(accountList); | ResponsiveJS.populateAccount(accountList); | ||
ResponsiveJS.populatePage(pageList); | ResponsiveJS.populatePage(pageList); | ||
$('#right-navigation #p-search #searchform').clone().appendTo(menuSearch); | $('#right-navigation #p-search #searchform').clone().appendTo(menuSearch); | ||
ResponsiveJS.populateNav(mainMenu); | ResponsiveJS.populateNav(mainMenu); | ||
+ | |||
+ | mobileMenuButton.click(ResponsiveJS.menuButtonClick( | ||
+ | mainMenu, | ||
+ | {pageMenu,pageList,accountMenu,accountList,menuSearch.removeClass,openSearch,pageMenu,accountMenu}, | ||
+ | {pageMenu,accountMenu} | ||
+ | ) | ||
+ | ); | ||
}, | }, | ||
init:function() { | init:function() { | ||
Line 64: | Line 87: | ||
mainMenu.find('li h3').removeClass('down'); | mainMenu.find('li h3').removeClass('down'); | ||
$(this).toggleClass('down').next('ul').addClass('open'); | $(this).toggleClass('down').next('ul').addClass('open'); | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}); | }); | ||
Revision as of 04:28, 3 November 2014
var ResponsiveJS = { populateAccount:function(accountList){ $('#mw-head #p-personal > ul > li').each(function(){ var th = $(this); accountList.append('<li><span>' + th.html() + '</span></li>'); }); $('#mw-head #p-personal > ul > li').each(function(){ var th = $(this); accountList.append('<li><span>' + th.html() + '</span></li>'); }); }, populatePage:function(pageList){ $('#left-navigation ul li').each(function(){ var th = $(this); pageList.append('<li'+(th.hasClass('selected')?' class="selected"':'')+'>'+th.html()+'</li>'); }); $($('#right-navigation #p-cactions .menu ul li').get().reverse()).each(function(){ var th = $(this); pageList.append('<li class="f-right'+(th.hasClass('selected')?' selected':'')+'">'+th.html()+'</li>'); }); $($('#right-navigation #p-views ul li').get().reverse()).each(function(){ var th = $(this); pageList.append('<li class="f-right'+(th.hasClass('selected')?' selected':'')+'">'+th.html()+'</li>'); }); }, populateNav:function(mainMenu){ $('#mw-panel .portal:not(#p-Languages)').each(function(){ var th = $(this), listBuilder = ''; th.find('div ul li').each(function(){ var thi = $(this); listBuilder += '<li>'+thi.html()+'</li>'; }); mainMenu.append('<li>\ <h3><span>'+th.children('h3').text()+' <img src="/w/images/d/d9/User_Lexar_black-arrow.png" /></span></h3>\ <ul>\ '+listBuilder+'\ <li class="clearing"></li>\ </ul>\ <div class="clearing"></div>\ </li>'); }); }, menuButtonClick:function(mainMenu,classRemovals,objectShow) { $(this).toggleClass('active'); mainMenu.toggleClass('down'); mainMenu.find('ul').removeClass('open'); mainMenu.find('li h3').removeClass('down'); classRemovals.each(function(){ $(this).removeClass('down out gone'); }); objectShow.each(function(){ $(this).delay(400).show(0); }); }, menu:function(){ var mobileMenu = $(this), mobileMenuButton = mobileMenu.find('.mobile-menu-button'), pageMenu = mobileMenu.find('#page-menu'), accountMenu = mobileMenu.find('#account-menu'), accountList = mobileMenu.find('#account-list'), pageList = mobileMenu.find('#tab-menu'), menuSearch = mobileMenu.find('#p-search'), openSearch = mobileMenu.find('#search-expand'), mainMenu = mobileMenu.find('#mobile-ul-main'); ResponsiveJS.populateAccount(accountList); ResponsiveJS.populatePage(pageList); $('#right-navigation #p-search #searchform').clone().appendTo(menuSearch); ResponsiveJS.populateNav(mainMenu); mobileMenuButton.click(ResponsiveJS.menuButtonClick( mainMenu, {pageMenu,pageList,accountMenu,accountList,menuSearch.removeClass,openSearch,pageMenu,accountMenu}, {pageMenu,accountMenu} ) ); }, init:function() { $('head').prepend('<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;"/>'); $('#mw-content-text').addClass('main-area'); $('#right-navigation ul li').addClass('collapsible'); $('#mobile-menu').each(ResponsiveJS.menu); } }; $(ResponsiveJS.init); $(document).on('click','#mobile-ul-main li h3',function(){ mainMenu.find('ul').removeClass('open'); mainMenu.find('li h3').removeClass('down'); $(this).toggleClass('down').next('ul').addClass('open'); }); openSearch.click(function(){ menuSearch.toggleClass('out'); mobileMenu.find('#simpleSearch').css('width',(($('#mobile-menu').width()*65)/100)+'px'); $(this).toggleClass('out'); pageMenu.toggleClass('gone'); accountMenu.toggleClass('gone'); if(pageMenu.hasClass('gone')) { pageMenu.hide(); accountMenu.hide(); } else { pageMenu.delay(400).show(0); accountMenu.delay(400).show(0); } pageMenu.removeClass('down'); pageList.removeClass('down'); accountMenu.removeClass('down'); accountList.removeClass('down'); mainMenu.removeClass('down'); mainMenu.find('ul').removeClass('open'); mobileMenuButton.removeClass('active'); mainMenu.find('h3').removeClass('down'); }); pageMenu.click(function(){ pageList.toggleClass('down'); $(this).toggleClass('down'); accountMenu.removeClass('down'); accountList.removeClass('down'); mainMenu.removeClass('down'); mainMenu.find('ul').removeClass('open'); mobileMenuButton.removeClass('active'); mainMenu.find('li h3').removeClass('down'); accountMenu.removeClass('gone').delay(400).show(0); }); accountMenu.click(function(){ accountList.toggleClass('down'); $(this).toggleClass('down'); pageMenu.removeClass('down'); pageList.removeClass('down'); mainMenu.removeClass('down'); mainMenu.find('ul').removeClass('open'); mobileMenuButton.removeClass('active'); mainMenu.find('li h3').removeClass('down'); pageMenu.removeClass('gone').delay(400).show(0); });