NCBI sequence viewer 验证
-
https://www.ncbi.nlm.nih.gov/tools/sviewer/embedding-api/#bookmark8
1.sviewer的初始化
从其文档看
On the other hand if ExtJS scripts are declared/loaded before sviewer.js declaration, SV omits their loading to allow an embedding application to use a specific edition of the library.
sviewer.js 依赖的js 会默认从NCBI下载 如果已经从别的地方下载 后面就不会再下载 使用这个方案我们可以把sviewer.js和其依赖的js都打包到我们的app中
<script type=”text/javascript” src=”xxxx.js”></script>
<script type=”text/javascript” src=”http://www.ncbi.nlm.nih.gov/projects/sviewer/js/sviewer.js”></script>
SV分为自动初始化和动态初始化://自动初始化 注意要用 SeqViewerApp 类型 <script type=”text/javascript” src=”http://www.ncbi.nlm.nih.gov/projects/sviewer/js/sviewer.js” id="autoload”></script> <div id='some-id' class='SeqViewerApp'> <a href='?embedded=true&id=…'><a> </div>//动态初始化 这样我们可以和我们的系统进行交互 例如选择我们自己的数据后进行查看 <div id=’sv1’></div> ... <script type='text/javascript'> SeqViewOnReady(function() { var app = new SeqView.App(‘sv1’); app.load(‘embedded=true&id=…’); } ); </script>2.两种嵌入方式
Embed code for IFRAME<iframe id="sviframe" src="/projects/sviewer/embedded_iframe.html?iframe=sviframe&id=nt_011515" width="900">iframe的要求:
iframe id can be arbitrary, and it should be passed to the source URL as parameter 'iframe' (“sviframe” in the example above)
iframe content page (“/projects/sviewer/embedded_iframe.html” in the example) should belong to the same domain as the main page (take the page and save it on your server)
iframe should satisfy the minimal width requirement of 800 pixels to accommodate the pop-up interface elements of the Sequence Viewer
两个方式的对比
https://www.ncbi.nlm.nih.gov/projects/sviewer/embedded.html
3.app可以监听sv的事件
4.CORS sv已经对跨域做了处理
5.url and url_reload 访问远程文件
6.可以直接访问SRA、BAM、BigBED and BigWIG files
7.支持的track
sequence_track
six_frames_translation
SNP_track
HapMapRR_track
SNP_Bins_track
segment_map_track
graph_track
graph_overlay
gene_model_track
alignment_track
feature_track
dbvar_track
user_data_track
trace_track