My jQuery Plugin

获取URL参数

이 스크립트는 직접 설치하는 용도가 아닙니다. 다른 스크립트에서 메타 지시문 // @require https://update.greasyfork.org/scripts/35940/241249/My%20jQuery%20Plugin.js을(를) 사용하여 포함하는 라이브러리입니다.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

You will need to install an extension such as Tampermonkey to install this script.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @version        0.0.4
// @modifvm        2018.01.05
// @name           My jQuery Plugin
// @homepage       https://greasyfork.org/zh-CN/scripts/35940
// ==/UserScript==

(function ($) {
  $.getUrlParam = function(name, url, option) {//筛选参数,url 参数为数字时
    url = url ? url.replace(/^.+\?/,'') : location.search;
    //网址传递的参数提取,如果传入了url参数则使用传入的参数,否则使用当前页面的网址参数
    var reg = new RegExp("(?:^|&)(" + name + ")=([^&]*)(?:&|$)", "i");		//正则筛选参数
    var str = url.replace(/^\?/,'').match(reg);

    if (str !== null) {
      switch(option) {
        case 'param':
        case 0:
          return unescape(str[0]);		//所筛选的完整参数串
        case 'name':
        case 1:
          return unescape(str[1]);		//所筛选的参数名
        case 'value':
        case 2:
          return unescape(str[2]);		//所筛选的参数值
        default:
          return unescape(str[2]);        //默认返回参数值
      } 
    } else {
      return null;
    }
  }
  //设置新的参数
  $.setUrlParam = function(name, url, newVal){
    var checkParam=$.getUrlParam(name, url, 0);
    if(checkParam){
      return url.replace(checkParam, $.getUrlParam(name, url, 1)+"="+newVal);
    }
  }
})(jQuery);