Javascript jQuery:将参数写入和读取URL哈希的轻量级方法?
我正在使用jQuery,我想要一个轻量级插件来从URL写入和读取散列参数 例如,我希望能够读取像Javascript jQuery:将参数写入和读取URL哈希的轻量级方法?,javascript,jquery,url,jquery-plugins,Javascript,Jquery,Url,Jquery Plugins,我正在使用jQuery,我想要一个轻量级插件来从URL写入和读取散列参数 例如,我希望能够读取像index.html#color=red&day=monday这样的URL,并获得{color:'red',day:'monday'} 我还希望能够将参数写入散列,检查是否存在变量,并根据需要添加或更新它 有谁知道一个轻量级插件可以做到这一点,还是我需要自己编写 显然,我做了所有这些,还有更多,但我不需要所有的历史管理,我不愿意包含很多我不需要的代码 不确定是否有轻量级插件,但您可以使用 va
index.html#color=red&day=monday
这样的URL,并获得{color:'red',day:'monday'}
我还希望能够将参数写入散列,检查是否存在变量,并根据需要添加或更新它
有谁知道一个轻量级插件可以做到这一点,还是我需要自己编写
显然,我做了所有这些,还有更多,但我不需要所有的历史管理,我不愿意包含很多我不需要的代码 不确定是否有轻量级插件,但您可以使用
var hashdata = new Object();
jQuery.each(window.location.hash.replace(/^#/,'').split('&'), function(i,t){
var s = t.split('=');
hashdata[s[0]] = s[1];
});
如果我是正确的,它应该返回url中哈希数据的对象。知道当前散列数据后,您可以在需要时使用window.location.hash来更改该数据不确定是否有轻量级插件,但您可以使用
var hashdata = new Object();
jQuery.each(window.location.hash.replace(/^#/,'').split('&'), function(i,t){
var s = t.split('=');
hashdata[s[0]] = s[1];
});
如果我是正确的,它应该返回url中哈希数据的对象。知道当前散列数据后,可以使用window.location.hash在需要时更改该数据这将起作用,您可以将其放入函数中或直接使用它:
var hash = top.location.hash.replace('#', '');
var params = hash.split('&');
var result = {};
for(var i = 0; i < params.length; i++){
var propval = params[i].split('=');
result[propval[0]] = propval[1];
}
var hash=top.location.hash.replace('#','');
var params=hash.split('&');
var result={};
对于(变量i=0;i
这将起作用,您可以将其放入函数中或直接使用:
var hash = top.location.hash.replace('#', '');
var params = hash.split('&');
var result = {};
for(var i = 0; i < params.length; i++){
var propval = params[i].split('=');
result[propval[0]] = propval[1];
}
var hash=top.location.hash.replace('#','');
var params=hash.split('&');
var result={};
对于(变量i=0;i
可以读取片段参数:
$.url("index.html#color=red&day=monday").fparam("color"); // returns "red"
要编写它们,可以使用jquery的$.param()
助手。下面是一个可以读取片段参数的:
$.url("index.html#color=red&day=monday").fparam("color"); // returns "red"
要编写它们,可以使用jquery的
$.param()
助手。这里有一个谢谢-我已经有一些类似的代码了。棘手的一点是写入URL,检查变量是否已经存在。我希望有一个插件,但如果没有,我想我会写一些自定义的东西。谢谢-我已经有一些类似的代码了。棘手的一点是写入URL,检查变量是否已经存在。我希望有一个插件,但如果没有,我想我会写一些自定义的东西。