• 动态加载外部资源文件


    功能描述:根据当前页面的状态(读/写)来加载不同的外部资源(js、css等),从而达到合理加载页面内容,提高页面响应速度,优化应用性能的目的。

    实例参考:

    <script language="JavaScript">
      var bIsNewDoc="<Computed Value>"
      var strUnid = "<Computed Value>"
      var bIsEdited = "<Computed Value>";
      var strWfStatus= "<Computed Value>";
      var  hWinDlg = null;
      if (window.execScript == null) {
        window.execScript = function(script) {
          eval(script);
        }
      }
      function useScript (name) {
        try {
      var loader = xmlhttp();
      loader.open('GET', name, false);
      loader.send(null);
      window.execScript(loader.responseText.toString());
     } catch (e) {
      alert(e);
     }
      }
      function transferJs(name) {
        try {
          useScript(name);
        }catch (e) {
          alert(e);
        }
      }
     
      function xmlhttp() {
        try{return new ActiveXObject("Msxml2.XMLHTTP");} catch(e){}
        try{return new ActiveXObject("Microsoft.XMLHTTP");} catch(e){}
        try{return new XMLHttpRequest();} catch(e){}
        alert("XMLHttpRequest Object not existed!!");
        return null;
      }
    /*Customize when doc status is read or edit.
    ========================Start======================================================*/
      if (bIsNewDoc || (bIsEdited&&strWfStatus=="0")) {
        var externalFiles= [
          {Url: "/DFCS/dfcs.nsf/Resource/css/Common.css",  Type:"css"},   //表单样式
          {Url: "/DFCS/dfcs.nsf/FormDisposal.js",   Type:"javascript"},  //表单布局
          {Url: "/DFCS/dfcs.nsf/selPerson.js",    Type:"javascript"},  //选人控件
          {Url: "/DFCS/dfcs.nsf/Validate.js",    Type:"javascript"},  //元素校验
          {Url: "/DFCS/dfcs.nsf/MetaObject.js",      Type:"javascript"},  //元数据
          {Url: "<Computed Value>",         Type:"javascript"}  //日历控件kludge:目前必须放在最后
        ];
      }
      else{
        var externalFiles= [
          {Url: "/DFCS/dfcs.nsf/Resource/css/Common.css",  Type:"css"},   //表单样式
          {Url: "/DFCS/dfcs.nsf/FormDisposal.js",   Type:"javascript"},  //表单布局
          {Url: "/DFCS/dfcs.nsf/MetaObject.js",      Type:"javascript"}  //元数据
        ];
      }
    //=================================End=================================================
      intFilesTot = externalFiles.length;
      var oHead = document.getElementsByTagName('HEAD').item(0);        
      for(var i=0;i<intFilesTot;i++){  
        var sType = externalFiles[i].Type;
        if(sType=="javascript"){
     transferJs(externalFiles[i].Url);
        }
        else{
          if(sType=="css"){
            var cssTag = document.createElement('link');
        cssTag.setAttribute("rel","stylesheet");
        cssTag.setAttribute("type","text/css");
        cssTag.setAttribute("href",externalFiles[i].Url);
        oHead.appendChild(cssTag);
          }       
        }
      }
    </script>

  • 相关阅读:
    从头搭建Openstack运行环境(七)--实现负载均衡与外网访问
    ML2分层端口绑定技术在SDN开发中的应用(一)
    从头搭建Openstack运行环境(六)--租户网络间路由与防火墙
    翻译校对1
    pykube-pod.obj的json字符串解析
    第一版k8s
    the server does not allow access to the requested resource
    have fun of Docker
    Clean Development Series
    Understanding the GitHub Flow官方的是最好的,永远要看第一手资料
  • 原文地址:https://www.cnblogs.com/mingle/p/js_dynamic.html
Copyright © 2020-2023  润新知