Mercurial > repos > fubar > jbrowse2
view test-data/index.html @ 10:c60b17456297 draft
planemo upload commit 740eeca506257070c95f4e9f1a75911c31db5a04
author | fubar |
---|---|
date | Sat, 20 Jan 2024 07:13:26 +0000 |
parents | d78175596286 |
children |
line wrap: on
line source
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>JBrowse</title> <link rel="stylesheet" type="text/css" href="css/genome.css"> </head> <body> <script type="text/javascript"> // jshint unused: false var dojoConfig = { async: true, baseUrl: './src', has: { 'host-node': false // Prevent dojo from being fooled by Electron } }; // Move Electron's require out before loading Dojo if(window.process&&process.versions&&process.versions.electron) { window.electronRequire = require; delete window.require; } </script> <script type="text/javascript" src="src/dojo/dojo.js"></script> <script type="text/javascript" src="src/JBrowse/init.js"></script> <script type="text/javascript"> window.onerror=function(msg){ if( document.body ) document.body.setAttribute("JSError",msg); } // puts the main Browser object in this for convenience. feel // free to move it into function scope if you want to keep it // out of the global namespace var JBrowse; require(['JBrowse/Browser', 'dojo/io-query', 'dojo/json' ], function (Browser,ioQuery,JSON) { // the initial configuration of this JBrowse // instance // NOTE: this initial config is the same as any // other JBrowse config in any other file. this // one just sets defaults from URL query params. // If you are embedding JBrowse in some other app, // you might as well just set this initial config // to something like { include: '../my/dynamic/conf.json' }, // or you could put the entire // dynamically-generated JBrowse config here. // parse the query vars in the page URL var queryParams = ioQuery.queryToObject( window.location.search.slice(1) ); var config = { containerID: "GenomeBrowser", dataRoot: queryParams.data, queryParams: queryParams, location: queryParams.loc, forceTracks: queryParams.tracks, initialHighlight: queryParams.highlight, show_nav: queryParams.nav, show_tracklist: queryParams.tracklist, show_overview: queryParams.overview, show_menu: queryParams.menu, show_tracklabels: queryParams.tracklabels, highResolutionMode: queryParams.highres, stores: { url: { type: "JBrowse/Store/SeqFeature/FromConfig", features: [] } }, makeFullViewURL: function( browser ) { // the URL for the 'Full view' link // in embedded mode should be the current // view URL, except with 'nav', 'tracklist', // and 'overview' parameters forced to 1. return browser.makeCurrentViewURL({ nav: 1, tracklist: 1, overview: 1 }); }, updateBrowserURL: true }; //if there is ?addFeatures in the query params, //define a store for data from the URL if( queryParams.addFeatures ) { config.stores.url.features = JSON.parse( queryParams.addFeatures ); } // if there is ?addTracks in the query params, add // those track configurations to our initial // configuration if( queryParams.addTracks ) { config.tracks = JSON.parse( queryParams.addTracks ); } // if there is ?addStores in the query params, add // those store configurations to our initial // configuration if( queryParams.addStores ) { config.stores = JSON.parse( queryParams.addStores ); } // create a JBrowse global variable holding the JBrowse instance JBrowse = new Browser( config ); }); </script> </head> <body> <div id="GenomeBrowser" style="height: 100%; width: 100%; padding: 0; border: 0;"></div> <div style="display: none">JBrowseDefaultMainPage</div> </body> </html>