IE8下url问号后面的参数获取不到

我要获取请求路径下问号后面的参数,我在ie11下好用,在ie8下路径后面问号的参数没有了现在在IE8下面获取不出来参数,问一下大神们我是要配置一下IE8还是该怎么弄,IE11好用
如图所示1
2

 function parseURL(url){
    if(typeof url=='undefined')url=location;
    var a=document.createElement('a');
    a.href=url;
    return {
        source:url,
        protocol:a.protocol.replace(':',''),
        host:a.hostname,
        port:a.port,
        query:a.search,
        params:(function(){
            var ret={},
                seg=a.search.replace(/^\?/,'').split('&'),
                len=seg.length,i=0,s;
            for(;i<len;i++){
                if(!seg[i]){continue;}
                s=seg[i].split('=');
                ret[s[0]]=s[1];
            }
            return ret;
        })(),
        file:(a.pathname.match(/\/([^\/?#]+)$/i)||[,''])[1],
        hash:a.hash.replace('#',''),
        path:a.pathname.replace(/^([^\/])/,'/$1'),
        relative:(a.href.match(/tps?:\/\/[^\/]+(.+)/)||[,''])[1],
        segments:a.pathname.replace(/^\//,'').split('/')
    };
}

这个代码可以解析url获得各种参数

var url = window.location.href;
var queryStr = url.substring(url.indexOf('?') + 1, url.length);
var queryObj = {};
if (queryStr) {
var queryArr = queryStr.split('&');
for (var i = 0; i < queryArr.length; i++) {
var tmp = queryArr[i].split('=');
queryObj[tmp[0]] = tmp[1];
}
}
希望对你有帮助

楼上两位的思路都可以解决问题,但是你后端的语言是什么啊?你是怎么获取的?