茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    JS獲取當前腳本文件的絕對路徑
    來源:易賢網(wǎng) 閱讀:1467 次 日期:2016-08-02 16:19:56
    溫馨提示:易賢網(wǎng)小編為您整理了“JS獲取當前腳本文件的絕對路徑”,方便廣大網(wǎng)友查閱!

    當寫模塊加載器時,獲取當前腳本文件的絕對路徑作為基礎(chǔ)路徑是必不可少的一步,下面我們一起來探討一下這個問題吧!

    一、各大瀏覽器的實現(xiàn)方式                

    [a]. Chrome和FF

    超簡單的一句足矣!

    var getCurrAbsPath = function(){

     return document.currentScript.src;

    };

    這里利用了對象 document.currentScript ,它返回的是當前執(zhí)行的script元素;然后調(diào)用script元素的src屬性即可獲取腳本文件的絕對路徑。

    [b]. IE10+、Safari和Opera9

    利用Error對象的stack屬性(IE10+)、sourceURL屬性(Safari)和stacktrace屬性(Opera9)萃取絕對路徑

    var getCurrAbsPath = function(){

      var a = {}, stack;

      try{

       a.b();

      }

      catch(e){

       stack = e.stack || e.sourceURL || e.stacktrace; 

      }

      var rExtractUri = /(?:http|https|file):\/\/.*?\/.+?.js/, 

        absPath = rExtractUri.exec(stack);

      return absPath[0] || '';

    }; 

      [C]. IE5.5~9

    遍歷文檔中的script標簽

    var getCurrAbsPath = function(){

      var scripts = document.scripts;

      var isLt8 = ('' + document.querySelector).indexOf('[native code]') === -1;

      for (var i = scripts.length - 1, script; script = scripts[i--];){

        if (script.readyState === 'interative'){

         return isLt8 ? script.getAttribute('src', 4) : script.src;  

        }

      }

    };

    二、相關(guān)知識介紹                      

    IE5.5~9下script的readyState表示該script元素的狀態(tài),分別有以下的狀態(tài)值:

    uninitialized:未初始化

    loading:正在加載

    loaded:加載完成

    interative:執(zhí)行中

    complete:執(zhí)行完

    可通過訂閱onreadystatechange事件來監(jiān)聽script元素狀態(tài)的變化。但不幸的是loaded和complete狀態(tài)并出現(xiàn)順序不定且有可能僅出現(xiàn)其中一個,因此建議在動態(tài)添加script元素時,先設(shè)置src屬性后再將script元素添加到DOM樹中,這樣loaded和complete狀態(tài)僅會出現(xiàn)其中一個(雖然每次請求時,哪個出現(xiàn)是不定的),比較好監(jiān)測。

    三、IE和FF下的另一種方式                

    通過訂閱 window.onerror 事件,事件處理函數(shù)將接受三個參數(shù),分別是msg,url和num。這里url就是當前腳本的絕對路徑了。

    以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助。

    更多信息請查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機網(wǎng)站地址:JS獲取當前腳本文件的絕對路徑

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)