Jump to content

MediaWiki:Common.js: Difference between revisions

From Kanzenshuu Dragon Ball Wiki
Hujio (talk | contribs)
No edit summary
Hujio (talk | contribs)
No edit summary
Line 1: Line 1:
mw.loader.load( 'jquery.makeCollapsible' );
importScriptURI('http://www.dragonballencyclopedia.com/index.php?title=MediaWiki:Anime-Common.js&action=raw&ctype=text/javascript&dontcountme=s');


/* Seek out tabber divs and rearrange them into tabs */
/* Seek out tabber divs and rearrange them into tabs */

Revision as of 17:17, 11 March 2015

importScriptURI('http://www.dragonballencyclopedia.com/index.php?title=MediaWiki:Anime-Common.js&action=raw&ctype=text/javascript&dontcountme=s');

/* Seek out tabber divs and rearrange them into tabs */
$(function() {
 
    var tabbers = $("div.dbe-tabber");
 
    for(var i = 0; i < tabbers.length; ++i) {
 
        var tabber = tabbers.eq(i);
        var tabs = $(document.createElement("div")).addClass("dbe-tabs");
        var active = $(document.createElement("div")).addClass("dbe-tab-panel");
 
        var panels = tabber.children();
        var activeTab = null;
 
        for(var j = 0; j < panels.length; ++j) {
 
            var panel = panels.eq(j);
            var heading = panel.children("div.dbe-tab-title:first-child");
 
            var tab = $(document.createElement("a"));
            tab.attr("href", "#").addClass("dbe-tab").append(heading).appendTo(tabs);
 
            if(panel.hasClass("dbe-tab-panel-active"))
                activeTab = tab;
 
            var onclick = function(ts, a, t, p) {
 
                return function(event) {
 
                    event.preventDefault();
 
                    a.children().detach();
                    ts.children().removeClass("dbe-tab-active");
 
                    t.addClass("dbe-tab-active");
                    a.append(p);
 
                };
 
            }(tabs, active, tab, panel);
 
            tab.click(onclick);
 
        }
 
        panels.detach();
        tabber.prepend(active);
        tabber.prepend(tabs);
 
        if(!activeTab)
            activeTab = tabs.children("a:first-child");
 
        activeTab.trigger("click");
 
    }
 
});