Ox.load('UI', { debug: true, theme: 'classic' }, function() { Ox.Theme('classic'); $.getJSON(Ox.UI.PATH + 'json/Ox.UI.files.json', function(files) { doc = Ox.DocPanel({ files: Ox.merge([ 'Ox.js', 'Ox.Geo/Ox.Geo.js', 'Ox.Image/Ox.Image.js', ], files.filter(function(file) { return Ox.endsWith(file, '.js'); })), getModule: function(item) { var file = item.file.replace(Ox.PATH, ''); return file == 'Ox.js' ? 'Ox' : file.split('/')[0]; }, getSection: function(item) { var file = item.file.replace(Ox.PATH, ''); return item.section || file.split('/')[2]; }, path: Ox.PATH }).bindEvent({ load: function() { doc.selectItem(document.location.hash.substring(1)); }, select: function(data) { if (data.ids) { document.location.hash = data.ids[0]; } } }); doc.appendTo(Ox.UI.$body); window.onhashchange = function() { doc.selectItem(document.location.hash.substring(1)) }; }); });