方法一:原生
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\\[\\]]/g, \"\\\\$&\");
var regex = new RegExp(\"[?&]\" + name + \"(=([^&#]*)|&|#|$)\"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return \'\';
return decodeURIComponent(results[2].replace(/\\+/g, \" \"));
}
用法:
// query string: ?foo=lorem&bar=&baz
var foo = getParameterByName(\'foo\'); // \"lorem\"
var bar = getParameterByName(\'bar\'); // \"\" (present with empty value)
var baz = getParameterByName(\'baz\'); // \"\" (present with no value)
var qux = getParameterByName(\'qux\'); // null (absent)
注意:如果一个参数存在多次(?foo=lorem&foo=ipsum),您将获得第一个值(lorem)
方法二:插件
插件Purl允许检索URL的所有部分,包括锚点,主机等。
它可以使用或不使用jQuery。
用法很简单,很酷:
var url = $.url(\'http://allmarkedup.com/folder/dir/index.html?item=value\'); // jQuery version
var url = purl(\'http://allmarkedup.com/folder/dir/index.html?item=value\'); // plain JS version
url.attr(\'protocol\'); // returns \'http\'
url.attr(\'path\'); // returns \'/folder/dir/index.html\'
然而,该插件已经没人维护了,笔者建议使用URI.js代替。代码如下:
var url = new URI(\'http://allmarkedup.com/folder/dir/index.html?item=value\'); // plain JS version
url.protocol(); // returns \'http\'
url.path(); // returns \'/folder/dir/index.html\' 继续阅读与本文标签相同的文章
-
健乐教学机器人可开展的教学实训内容
2026-05-14栏目: 教程
-
5G套餐曝光遭“吐槽”,iphone11受追捧,导致苹果11销量比较高
2026-05-14栏目: 教程
-
为什么修电脑的叫自己不要杀毒和清理垃圾?
2026-05-14栏目: 教程
-
当水乡建筑遇上机器人,成就乌镇又一网红景点
2026-05-14栏目: 教程
-
惊险!手刹失灵,郴州一货车开启“无人驾驶”模式……
2026-05-14栏目: 教程
