I recently came across a piece of code. It is as follows:
      var myFeature = {
'config' : { 
    'container' : $('#myFeature')
},
'init' : function(config) { 
    if (config && typeof(config) == 'object') {
        $.extend(myFeature.config, config);
    }
    myFeature.$container = myFeature.config.container;
    myFeature.$sections = myFeature.$container.
        find('ul.sections > li'); 
    myFeature.$section_nav = $('<ul/>').
        attr('id','section_nav').
        prependTo(myFeature.$container);
    myFeature.$item_nav = $('<ul/>').
        attr('id','item_nav').
        insertAfter(myFeature.$section_nav);
    myFeature.$content = $('<div/>').
        attr('id','content').
        insertAfter(myFeature.$item_nav);
    myFeature.buildSectionNav(myFeature.$sections);
    myFeature.$section_nav.find('li:first').click();
    myFeature.$container.find('ul.sections').hide();
    myFeature.initialized = true;
},
'buildSectionNav' : function($sections) {
    $sections.each(function() {
        var $section = $(this);
        $('<li/>').
            text($section.find('h2:first').text()).
            appendTo(myFeature.$section_nav).
            data('section', $section).
            click(myFeature.showSection);
    });
},
'buildItemNav' : function($items) {
    $items.each(function() {
        var $item = $(this);
        $('<li/>').
            text($item.find('h3:first').text()).
            appendTo(myFeature.$item_nav).
            data('item', $item).
            click(myFeature.showContentItem);
    });
},
'showSection' : function() { 
    var $li = $(this);
    myFeature.$item_nav.empty();
    myFeature.$content.empty();
    var $section = $li.data('section');
    $li.addClass('current').
        siblings().removeClass('current');
    var $items = $section.find('ul li');
    myFeature.buildItemNav($items);
    myFeature.$item_nav.find('li:first').click();
},
'showContentItem' : function() {
    var $li = $(this);
    $li.addClass('current').
        siblings().removeClass('current');
    var $item = $li.data('item');
    myFeature.$content.html($item.html());
}
 };
I know what $('#myFeature'), $(this) means. But what does $li and myFeature.$container mean? Are they some type of variables? If so, what is the scope of myFeature.$container? since it is not declared using var, is it global?
 
     
     
     
     
     
     
     
    