zoukankan      html  css  js  c++  java
  • JS加载相对路径脚本的方法

      js加载脚本的方式有很多,但是各有各的用途。

      最近公司https项目改造,对于资源文件这一块,也是遇到一些问题,现在就来总结一下,怎样改造https的脚本吧~!

    方法1、借助服务端语言如PHP,输入当前是https或者http的标识到html页面,再次编译后得到输出结果。【有服务端语言参与时推荐】

    <script type="text/javascript" src="{$__SYS_URL__.__httpsUrl__}/dataster2/js/jquery.min.js"></script>

    方法2、使用html标签base 替换该变量,其他地方的变量则用相对路径即可,如 /img/a.png ...    【有功能局限】

    <base id="based" href="http://res.cccc.com/">
    <script type="text/javascript">
            var host = window.location.host;
            if(host.indexOf("eccc") > 0){
                $("#based").attr("href","http://res.ccc.com/");
            }else if(host.indexOf("xxxx") > 0){
                $("#based").attr("href","https://res.cccc.com/");
            }
    </script>

    方法3、使用html自带的特性,自动获取当前协议填充 【方便易用、推荐】

    <script type="text/javascript" src="http://cdn.ccc.com/static/common/lib/a.js"></script>
    <!-- 改为 -->
    <script type="text/javascript" src="//cdn.ccc.com/static/common/lib/a.js"></script>

    方法4、使用js脚本加载script文件,添加到dom中   【在有些需求场景,低侵入式操作推荐】

    <script type="text/javascript">
            //在每个需要的地方加该代码,好烦呐
            var hm = document.createElement("script");
            hm.src = "//hm.baidu.com/hm.js?96664522";
            var s = document.getElementsByTagName("script")[0];
            s.parentNode.insertBefore(hm, s);
    </script>

    方法5、将原始脚本拷贝到本项目中,使用相对路径加载 【最笨的方法,不推荐】

    <script>
            var cc = 1; 
            //...
            //...
    </script>

    注意:

      1. 使用https协议加载网页时,一些低版本的app可能不支持,需要避免该情况。

      2. 当https协议的网页中,包含了http的资源文件时,该网页将会被认为是有不完全的连接,因此一改造https,应将所有http链接改为https。

      3. https证书尽量使用国际证书,如果有多个二级域名时,应买通配证书而非某特定域名证书。

    暂且总结如此。

  • 相关阅读:
    类的有参方法
    WPF 中的设备无关单位
    Skelta BPM.NET 2006 初探
    Reporting Services Handscript
    C语言I博客作业03
    C语言I博客作业02
    C++类的运算符重载和转换函数结合的问题
    C++ 函数返回类成员的问题
    kaggle 利用linear regression 进行房价预测
    android Could not open: c:\。。。。\.android/avd/XXXX.ini 问题和解决方法
  • 原文地址:https://www.cnblogs.com/yougewe/p/6322038.html
Copyright © 2011-2022 走看看