Kaynak dosyasının Javascript'teki sayfa tarafından yüklenip yüklenmediğini nasıl öğrenebilirim?

Javascript kullanan bir sayfanın kaynak dosyası yüklü olup olmadığını nasıl anlarım?

Örneğin, bazı .css, JS veya başka tür bir dosya?

2

2 cevap

Dosyaları dinamik olarak ekleyip eklemediğinize bağlıdır. JavaScript dosyalarını açıklayacağım.

Harici bir dosya yüklemek için bu kod parçasını kullanın:

var scriptElem = document.createElement('script');

scriptElem.onload = function() {alert('Script loaded.');}

scriptElem.src = 'test.js';

document.getElementsByTagName('head')[0].appendChild(scriptElem);

Veya bunları HTML yoluyla ekliyorsanız, komut dosyası dosyasının bir değişkenle yüklendiğini yansıtabilirsiniz. Örneğin. test.js içinde:

// ...rest of file...

window.testLoaded = true;

Daha sonra sayfada window.testLoaded === true için kontrol edebilirsiniz.

CSS dosyaları için, ilk tekniği de kullanabilirsiniz, ancak elbette ikinci değil. Bir .test sınıfı için bir saplama tanımını tanımlamak, sonra bu sınıfa bir öğe oluşturmak ve CSS dosyasında ayarladığınız belirli bir stili olup olmadığını kontrol etmek mümkün olabilir.

3
katma
tamam, teşekkürler, deneyeceğim
katma yazar WHITECOLOR, kaynak

JQuery.ready etkinliğini kullanın, bu da tüm sayfanın ayarlandığını ve daha sonra JavaScript mantığınızı çalıştırmaya başladığınız anlamına gelir.

$(document).ready(function(){
   //your code
});

Eşzamansız olarak bir şeyler yüklemeniz gerekiyorsa, bir komut dosyası yükleme örneği gibi yüklemek için JavaScript kodunuzu kullanmalısınız:

$.getScript("http://.../some.js", function(){
  //script loaded and hooked on the page; your custom logic here
});

Daha karmaşık bir şey için requireJS gibi bir bağımlılık yönetim sistemi öneririm.

2
katma