User:Locke/common.js: Difference between revisions

From Zelda Dungeon Wiki
Jump to navigation Jump to search
Want an adless experience? Log in or Create an account.
(this isn't good enough, I need to keep track of some object with all the selections for a selector.)
No edit summary
Line 1: Line 1:
var tabstate = {};
$('.tabset').each( function() {
$('.tabset').each( function() {
   var target = $(this).attr('tab-target');
   var target = $(this).attr('tab-target');
   var selector = $(this).attr('tab-selector');
   var selector = $(this).attr('tab-selector');
  tabstate[target] = [];
   $(this).find('li a').each( function() {
   $(this).find('li a').each( function() {
     var selection = $(this).attr('tab-selection');
     var selection = $(this).attr('tab-selection');
    //TODO defaults
     $(this).on('click', function() {
     $(this).on('click', function() {
       $('#'+target+' div').hide();
       $('#'+target+' div').hide();
       var todo = 0;
      tabstate[target][selector] = selection;
       $('#'+target+' div[tab-content="'+todo+'"]').show();
       var content = tabstate[target].join(' ');
       $('#'+target+' div[tab-content="'+content+'"]').show();
     });
     });
   });
   });

Revision as of 19:48, November 12, 2014

var tabstate = {};
$('.tabset').each( function() {
  var target = $(this).attr('tab-target');
  var selector = $(this).attr('tab-selector');
  tabstate[target] = [];
  $(this).find('li a').each( function() {
    var selection = $(this).attr('tab-selection');
    //TODO defaults
    $(this).on('click', function() {
      $('#'+target+' div').hide();
      tabstate[target][selector] = selection;
      var content = tabstate[target].join(' ');
      $('#'+target+' div[tab-content="'+content+'"]').show();
    });
  });
});

function DataLoader( basepage, target ) {
    this.loadData = function( subpage ) {
        mw.loader.using( 'mediawiki.api', function () {
            (new mw.Api()).ajax( {
                action: 'parse',
                format: 'json',
                prop: 'text',
                page: basepage + '/' + subpage
            } ).done ( function ( data ) {
                $('#' + target).empty();
                $('#' + target).append( data['parse']['text']['*'] );
            } );
        } );
    };
}

var loader = new DataLoader( 'User:Locke/Sandbox', 'dl-target' );
loader.loadData( 'Template' );