首页 > 语言 > JavaScript > 正文

javascript实现动态导入js与css等静态资源文件的方法

2024-05-06 16:23:42
字体:
来源:转载
供稿:网友

这篇文章主要介绍了javascript实现动态导入js与css等静态资源文件的方法,基于回调函数实现该功能,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了javascript实现动态导入js与css等静态资源文件的方法。分享给大家供大家参考。具体实现方法如下:

 

 
  1. /** 
  2. * 动态导入静态资源文件js/css 
  3. */ 
  4. var $import = function(){ 
  5. return function(rId, res, callback){ 
  6. if(res && 'string' == typeof res){ 
  7. if(rId){ 
  8. if($($('#' + rId), $('head')).length>0){ 
  9. return
  10. //加载资源文件 
  11. var sType = res.substring(res.lastIndexOf('.') + 1); 
  12. // 支持js/css 
  13. if(sType && ('js' == sType || 'css' == sType)){ 
  14. var isScript = (sType == 'js'); 
  15. var tag = isScript ? 'script' : 'link'
  16. var head = document.getElementsByTagName('head')[0]; 
  17. // 创建节点 
  18. var linkScript = document.createElement(tag); 
  19. linkScript.type = isScript ? 'text/javascript' : 'text/css'
  20. linkScript.charset = 'UTF-8'
  21. if(!isScript){ 
  22. linkScript.rel = 'stylesheet'
  23. isScript ? linkScript.src = res : linkScript.href = res; 
  24. if(callback && 'function' == typeof callback){ 
  25. if (linkScript.addEventListener){ 
  26. linkScript.addEventListener('load'function(){ 
  27. callback.call(); 
  28. }, false); 
  29. else if (linkScript.attachEvent) { 
  30. linkScript.attachEvent('onreadystatechange'function(){ 
  31. var target = window.event.srcElement; 
  32. if (target.readyState == 'complete') { 
  33. callback.call(); 
  34. }); 
  35. head.appendChild(linkScript); 
  36. }; 
  37. }(); 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选