js操作浏览器的参数方法

 更新时间:2017年01月21日 09:17:08   投稿:jingxian  
下面小编就为大家带来一篇js操作浏览器的参数方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

实例如下:

function getQueStr(url, ref) //取获参数值
{
  var str = url.substr(url.indexOf('?') + 1);
  if (str.indexOf('&') != -1) {
    var arr = str.split('&');
    for (i in arr) {
      if (arr[i].split('=')[0] == ref)
        return arr[i].split('=')[1];
    }
  }
  else {
    return url.substr(url.indexOf('=') + 1)
  }
}

function setQueStr(url, ref, value) //设置参数值
{
  var str = "";
  if (url.indexOf('?') != -1)
    str = url.substr(url.indexOf('?') + 1);
  else
    return url + "?" + ref + "=" + value;
  var returnurl = "";
  var setparam = "";
  var arr;
  var modify = "0";

  if (str.indexOf('&') != -1) {
    arr = str.split('&');

    for (i in arr) {
      if (arr[i].split('=')[0] == ref) {
        setparam = value;
        modify = "1";
      }
      else {
        setparam = arr[i].split('=')[1];
      }
      returnurl = returnurl + arr[i].split('=')[0] + "=" + setparam + "&";
    }

    returnurl = returnurl.substr(0, returnurl.length - 1);

    if (modify == "0")
      if (returnurl == str)
        returnurl = returnurl + "&" + ref + "=" + value;
  }
  else {
    if (str.indexOf('=') != -1) {
      arr = str.split('=');

      if (arr[0] == ref) {
        setparam = value;
        modify = "1";
      }
      else {
        setparam = arr[1];
      }
      returnurl = arr[0] + "=" + setparam;
      if (modify == "0")
        if (returnurl == str)
          returnurl = returnurl + "&" + ref + "=" + value;
    }
    else
      returnurl = ref + "=" + value;
  }
  return url.substr(0, url.indexOf('?')) + "?" + returnurl;
}

function delQueStr(url, ref) //删除参数值
{
  var str = "";

  if (url.indexOf('?') != -1)
    str = url.substr(url.indexOf('?') + 1);
  else
    return url;
  var arr = "";
  var returnurl = "";
  var setparam = "";
  if (str.indexOf('&') != -1) {
    arr = str.split('&');
    for (i in arr) {
      if (arr[i].split('=')[0] != ref) {
        returnurl = returnurl + arr[i].split('=')[0] + "=" + arr[i].split('=')[1] + "&";
      }
    }
    return url.substr(0, url.indexOf('?')) + "?" + returnurl.substr(0, returnurl.length - 1);
  }
  else {
    arr = str.split('=');
    if (arr[0] == ref)
      return url.substr(0, url.indexOf('?'));
    else
      return url;
  }
}

以上这篇js操作浏览器的参数方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论