Rumah >hujung hadapan web >tutorial js >JS mendapat laluan mutlak petua file_javascript skrip semasa

JS mendapat laluan mutlak petua file_javascript skrip semasa

WBOY
WBOYasal
2016-05-16 15:12:212525semak imbas

Apabila menulis pemuat modul, ini merupakan langkah penting untuk mendapatkan laluan mutlak fail skrip semasa sebagai laluan asas Mari kita bincangkan isu ini bersama-sama!

1. Kaedah pelaksanaan pelayar utama    

[a]. Chrome dan FF

Ayat yang sangat mudah sudah memadai!

var getCurrAbsPath = function(){
 return document.currentScript.src;
};

Document.currentScript objek digunakan di sini, yang mengembalikan elemen skrip yang sedang dilaksanakan, kemudian laluan mutlak fail skrip boleh diperoleh dengan memanggil atribut src elemen skrip.

[b]. IE10+, Safari dan Opera9

Gunakan atribut tindanan (IE10+), atribut sourceURL (Safari) dan atribut surih tindanan (Opera9) objek Ralat untuk mengekstrak laluan mutlak

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

Lintas tag skrip dalam dokumen

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;  
    }
  }
};

2. Pengenalan kepada pengetahuan yang berkaitan            

Skrip readyState di bawah IE5.5~9 menunjukkan status elemen skrip, yang mempunyai nilai status berikut:

tidak dimulakan: tidak dimulakan

memuatkan: Memuatkan

dimuatkan: Pemuatan selesai

interaktif: melaksanakan

selesai: pelaksanaan selesai

Anda boleh mendengar perubahan keadaan elemen skrip dengan melanggan acara onreadystatechange. Tetapi malangnya, keadaan yang dimuatkan dan lengkap muncul dalam susunan yang tidak pasti dan hanya satu daripadanya mungkin muncul Oleh itu, adalah disyorkan bahawa apabila menambah elemen skrip secara dinamik, anda mula-mula menetapkan atribut src dan kemudian menambah elemen skrip pada pepohon DOM. , supaya keadaan yang dimuatkan dan lengkap hanya Satu daripadanya akan muncul (walaupun yang mana satu muncul setiap kali diminta), yang lebih mudah untuk dipantau.

3 Cara lain di bawah IE dan FF      

Dengan melanggan acara window.onerror, fungsi pengendali acara akan menerima tiga parameter, iaitu msg, url dan num. Url di sini ialah laluan mutlak skrip semasa.

Di atas adalah keseluruhan kandungan artikel ini, saya harap ia akan membantu kajian semua orang.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn