Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hash History.js书签支持HTML5(pushState)和HTML4(#)_Hash_History.js_Url Parsing - Fatal编程技术网

Hash History.js书签支持HTML5(pushState)和HTML4(#)

Hash History.js书签支持HTML5(pushState)和HTML4(#),hash,history.js,url-parsing,Hash,History.js,Url Parsing,我已经在HTML5和HTML4浏览器中通过History.js使用了后退和前进按钮 我现在试图通过解析url并在querystring中加载内容来添加书签支持。我通常使用的代码是: var urlParams = {}; (function () { var match, pl = /\+/g, search = /([^&=]+)=?([^&]*)/g,

我已经在HTML5和HTML4浏览器中通过History.js使用了后退和前进按钮

我现在试图通过解析url并在querystring中加载内容来添加书签支持。我通常使用的代码是:

var urlParams = {};
            (function () {
            var match,
                pl     = /\+/g,  
                search = /([^&=]+)=?([^&]*)/g,
                decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); },
                query  = window.location.search.substring(1);

            while (match = search.exec(query))
            urlParams[decode(match[1])] = decode(match[2]);
            })();  

这对HTML5非常有效,但显然对HTML4不起作用。解析HTML4中的哈希和HTML5中的子字符串的好方法是什么?

在本页找到了一个解决方案:

“但是,您可以从我的一个名为jQuery Sparkle的实用程序项目中使用此功能来完成您需要的工作:

所以你会这样做:

var State = History.getState(), dataQuery = State.url. queryStringToJSON();"