【归总】原生js操作浏览器hash、url参数参数获取/修改方法合集

简介: 【归总】原生js操作浏览器hash、url参数参数获取/修改方法合集


$g.$utils.hash = {
    get(win) {
        return decodeURIComponent((win || top).location.hash.substr(1));
    }, 
    getSearchAndHash(win) {
        win || (win = top);
        return decodeURIComponent(win.location.search + win.location.hash);
    }, 
    set(hash, win, isReload) {
        hash || (hash = "");
        win = win || top;
        win.location.hash = hash;
        isReload && win.location.reload();
    }, 
 
    addListener(win) {
        (win || window).onhashchange = function () {
            this.location.reload();
        }
    }, 
    
    getUrlParam(name, win, isEncode) {
        var r = (win || top).location.search.substr(1).match(new RegExp("(^|&)" + name + "=([^&]*)(&|$)"));
        if (r != null) {
            return isEncode ? r[2] : decodeURIComponent(r[2]);
        }
        return null;
    }, 
    getUrlParams(url) {
        var reg = /([^=&\s]+)[=\s]*([^&\s]*)/g, ls = url || location.search.substr(1), obj = {};
        while (reg.exec(ls)) obj[RegExp.$1] = decodeURIComponent(RegExp.$2);
        return obj;
    }, 
 
    setUrlSearch(search, win, isReload) { /*此方法可以点击网页返回按钮*/
        win = win || top;
        win.history.pushState(null, null, search || "./");
        isReload && win.location.reload();
    }, 
    replceUrlSearch(search, win, isReload) { /*此方法无网页返回按钮行为*/
        win = win || top;
        win.history.replaceState(null, null, search || "./");
        isReload && win.location.reload();
    }, 
 
    getFileName() {
        var lp = location.pathname, fn = lp.substr(lp.lastIndexOf("/") + 1);
        return fn.substr(0, fn.lastIndexOf("."));
    }
};

扩展阅读:


相关文章
|
1天前
|
JavaScript 前端开发
11.JavaScript 事件的概念以及绑定方法
11.JavaScript 事件的概念以及绑定方法
|
2天前
|
存储 JavaScript 前端开发
每日一道javascript面试题(九)函数的参数可以和函数体中的变量重名吗
每日一道javascript面试题(九)函数的参数可以和函数体中的变量重名吗
|
4天前
|
JavaScript 前端开发
js 操作数组的方法
js 操作数组的方法
14 4
|
5天前
|
JavaScript 前端开发 BI
原生html—摆脱ps、excel 在线绘制财务表格加水印(html绘制表格js加水印)
原生html—摆脱ps、excel 在线绘制财务表格加水印(html绘制表格js加水印)
9 1
|
8天前
|
JavaScript 前端开发 UED
深入解析JavaScript原生操作DOM技术
【4月更文挑战第22天】本文深入探讨JavaScript原生DOM操作技术,包括使用`getElement*`方法和CSS选择器获取元素,借助`createElement`与`appendChild`动态创建及插入元素,修改元素内容、属性和样式,以及删除元素。通过掌握这些技术,开发者能实现页面动态交互,但应注意避免过度操作DOM以优化性能和用户体验。
|
11天前
|
JavaScript 前端开发
JavaScript Dom方法
JavaScript Dom方法
36 2
|
12天前
|
JavaScript 前端开发 Java
js 垃圾回收机制的方法
js 垃圾回收机制的方法
|
23天前
|
JavaScript
vue截取URL中的参数
vue截取URL中的参数
13 0
|
2月前
|
前端开发
[牛客网-前端大挑战QD2] 获取url参数
[牛客网-前端大挑战QD2] 获取url参数
20 0
|
2月前
BurpSuite8.2 -- 查找包含id参数的URL
BurpSuite8.2 -- 查找包含id参数的URL
19 1