zoukankan      html  css  js  c++  java
  • 两个页面js方法兼容

    1. a.js页面

     1 //Js获取Url参数
     2 function request(paras) {
     3     var url = location.href;
     4     var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
     5     var paraObj = {};
     6     for (i = 0; j = paraString[i]; i++) {
     7         paraObj[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
     8     }
     9     var returnValue = paraObj[paras.toLowerCase()];
    10     if (typeof (returnValue) == "undefined") {
    11         return "";
    12     } else {
    13         return returnValue;
    14     }
    15 }

    2. b.js页面

    1 //获取url中的参数
    2 var request =
    3 {
    4     QueryString: function (val) {
    5         var uri = window.location.search;
    6         var re = new RegExp("" + val + "=([^&?]*)", "ig");
    7         return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);
    8     }
    9 };

    一个页面同时引用a.js和b.js,a.js在前,b.js在后。因为a.js页面和b.js页面都有request对象,导致a.js里的request(paras)方法无效。

    解决方法:

    调用b.js的request方法

    1 if (typeof (request) == "undefined") {
    2     request = function () { };
    3 }
    4 request.QueryString = function (val) {
    5     var uri = window.location.search;
    6     var re = new RegExp("" + val + "=([^&?]*)", "ig");
    7     return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);
    8 }
  • 相关阅读:
    Redhat7.0版本下双网卡绑定
    Zabbix3.4 Proxy搭建
    Centos7 + Mariadb主从配置
    Cacti找回管理员密码
    2017科鲁兹钥匙电池更换
    Failed to set locale, defaulting to C.UTF-8 centos8.2报错
    centos8如何重启网络服务
    gem install报错 ruby升级
    vmware fusion 11.0.0激活
    转载 centos8.1网络重启
  • 原文地址:https://www.cnblogs.com/059212315/p/6841387.html
Copyright © 2011-2022 走看看