检测是否加载了js文件 IE6,firefox测试通过

本文介绍了一个实用的JavaScript脚本,用于检测网页中是否已加载指定的JS文件。该脚本提供了多种方法,包括通过文件名或完整路径来检查JS文件是否被加载,以及如何将新的JS文件加载到页面头部或主体部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*检测是否加载了js文件*/
var documentjs={
 getScripts:function(){ //获取页面中的所有js
  var retsrc=new Array();
  for(var i=0;i<document.getElementsByTagName('script').length;i++){
   if(document.getElementsByTagName('script')[i].src!=null && document.getElementsByTagName('script')[i].src!=''){
    var s=document.getElementsByTagName('script')[i].src;
    if(s.indexOf('//')>0){
     s=s.substr(s.indexOf('//')+2);
     retsrc[retsrc.length]=s.substr(s.indexOf('/'));
    }else{
     retsrc[retsrc.length]=s;
    }    
   }
  }
  return retsrc;
 },
 isLoadedByName:function(jsname){ //根据文件名判断是否加载,如:a.js
  var js=documentjs.getScripts();
  var f=false;
  for(var i=0;i<js.length;i++){
   var s=js[i].split('/');
   if(s[s.length-1].toLowerCase()==jsname.toLowerCase()){
    f=true;break;
   }
  }
  return f;
 },
 isLoadedByPath:function(path){ //根据文件路径判断是否加载,如:/a.js
  var js=documentjs.getScripts();
  var f=false;
  for(var i=0;i<js.length;i++){
   if(js[i].toLowerCase()==path.toLowerCase()){
    f=true;break;
   }
  }
  return f;
 },
 loadScriptHead:function(path){ //加载文件到head之间
  if(!documentjs.isLoadedByPath(path)){
   head=document.getElementsByTagName('head').item(0);
         script=document.createElement('script');
         script.src=path;
         script.type='text/javascript';
         script.defer=true;
         void(head.appendChild(script));
  }
 },
 loadScriptBody:function(path){ //加载到body之间
  if(!documentjs.isLoadedByPath(path)){
   script=document.createElement('script');
         script.src=path;
         script.type='text/javascript';
         script.defer=true;
         document.body.appendChild(script);
  }
 }
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值