MozTW 討論區
https://forum.moztw.org/

偵測網頁上的 javascript 函式庫( bookmarklet )
https://forum.moztw.org/viewtopic.php?f=11&t=39561
1 頁 (共 1 頁)

發表人:  shyangs [ 2013-04-04, 18:20 ]
文章主題 :  偵測網頁上的 javascript 函式庫( bookmarklet )

看到一個套件 Library Detector,可以偵測網頁上的 javascript 函式庫。我把它的核心提取出來,做了個 bookmarklet. 可以偵測 jQuery, jQuery UI, jQuery Tools, jQuery Mobile, MooTools, Prototype, Scriptaculous, Dojo, Ext JS, Spry, Underscore, Backbone, YUI.

存成書籤,並設關鍵字,可以透過 在網址列輸入書籤關鍵字 或 FireGestures呼叫

測試了一下,發現 AMO 用了 jQuery, jQuery UI, 和 Underscore.

代碼:
javascript:(function(){var%20libDetector={'jQuery':function(win){var%20jq=win.jQuery||win.$||win.$jq||win.$j;return(jq&&jq.fn&&jq.fn.jquery)?{version:jq.fn.jquery}:false},'jQuery%20UI':function(win){var%20jq=win.jQuery||win.$||win.$jq||win.$j;if(jq&&jq.fn&&jq.fn.jquery&&jq.ui){var%20plugins='accordion,datepicker,dialog,draggable,droppable,progressbar,resizable,selectable,slider,menu,grid,tabs'.split(','),concat=[];var%20i=plugins.length;while(i--){if(jq.ui[plugins[i]])concat.push(plugins[i].substr(0,1).toUpperCase()+plugins[i].substr(1))};return{version:jq.ui.version,details:concat.length?'.%20Plugins%20used:%20'+concat.join(','):''}}return%20false},'jQuery%20Tools':function(win){var%20jq=win.jQuery||win.$||win.$jq||win.$j;return(jq&&jq.tools)?{version:jq.tools.version}:false},'jQuery%20Mobile':function(win){var%20jq=win.jQuery||win.$||win.$jq||win.$j;return(jq&&jq.fn&&jq.fn.jquery&&jq.mobile)?{version:jq.mobile.version}:false},'MooTools':function(win){return(win.MooTools&&win.MooTools.version)?{version:win.MooTools.version}:false},'Prototype':function(win){return(win.Prototype&&win.Prototype.Version)?{version:win.Prototype.Version}:false},'Scriptaculous':function(win){return(win.Scriptaculous&&win.Scriptaculous.Version)?{version:win.Scriptaculous.Version}:false},'Dojo':function(win){return(win.dojo)?{version:win.dojo.version.toString(),details:'.%20Details:%20'+(win.dijit?'Uses%20Dijit':'none')}:false},'Ext%20JS':function(win){if(win.Ext&&win.Ext.version){return{version:win.Ext.version}}else%20if(win.Ext&&window.Ext.versions){return{version:window.Ext.versions.core.version}}return%20false},'Spry':function(win){return(win.Spry)?{version:'(not%20detectable)'}:false},'Underscore':function(win){return(win._&&win._.VERSION&&typeof%20win._.tap==='function')?{version:win._.VERSION}:false},'Backbone':function(win){return(win.Backbone&&win.Backbone.Model.extend)?{version:win.Backbone.VERSION}:false},'YUI%203':function(win){return(win.YUI&&win.YUI.Env&&win.YUI.version)?{version:win.YUI.version}:false},'YUI%202':function(win){return(win.YAHOO&&win.YAHOO.VERSION)?{version:win.YAHOO.VERSION}:false}};var%20ii,str="";for(ii%20in%20libDetector){var%20passed=libDetector[ii](window);if(passed){str+=ii+".%20Version:%20"+(passed.version||'(not%20detectable)')+(passed.details||'')+"\n"}}alert(""===str?"not%20detected":str)})();

1 頁 (共 1 頁) 所有顯示的時間為 UTC + 8 小時
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/