js获取或设置当前窗口url参数的小例子


Posted in Javascript onOctober 14, 2013
// 获取当前窗口url中param参数的值
function get_param(param){
    var query = location.search.substring(1).split('&');
    for(var i=0;i<query.length;i++){
        var kv = query[i].split('=');
        if(kv[0] == param){
            return kv[1];
        }
    }
    return null;
}
// 设置当前窗口url中param的值
function set_param(param,value){
    var query = location.search.substring(1);
    var p = new RegExp("(^|&"+param+")=[^&]*");
    if(p.test(query)){
        query = query.replace(p,"$1="+value);
        location.search = '?'+query;
    }else{
        if(query == ''){
            location.search = '?'+param+'='+value;
        }else{
            location.search = '?'+query+'&'+param+'='+value;
        }
    }    
}

注意location.search获取到的是url中?开始到#之间的内容(包含?但不包含#)。

在上一个翻页代码,其中用有到了上面两个函数

// 上一页
function page_pre(current_page,page_total){
    if(current_page <= 1 || current_page > page_total){
        return false;
    }
    var pre_page = parseInt(current_page) - 1;
    set_param('page',pre_page);
}
// 下一页
function page_next(current_page,page_total){
    if(current_page < 1 || current_page >= page_total){
        return false;
    }
    var next_page = parseInt(current_page) + 1;
    set_param('page',next_page);
}
Javascript 相关文章推荐
jQuery滚动加载图片效果的实现
Mar 06 Javascript
使用JavaScript实现连续滚动字幕效果的方法
Jul 07 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
May 03 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
May 05 Javascript
JQuery点击行tr实现checkBox选中的简单实例
May 26 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图和饼图的组合图效果示例【附demo源码下载】
Mar 09 Javascript
浅谈React Event实现原理
Sep 20 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
Oct 12 Javascript
React 使用Hooks简化受控组件的状态绑定
Mar 18 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
Aug 27 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 Javascript
vue 实现上传组件
May 31 Vue.js
几种延迟加载JS代码的方法加快网页的访问速度
Oct 12 #Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 #Javascript
javascript动态的改变IFrame的高度实现自动伸展
Oct 12 #Javascript
JavaScript var声明变量背后的原理示例解析
Oct 12 #Javascript
原生js操作checkbox用document.getElementById实现
Oct 12 #Javascript
基于jquery的9行js轻松实现tab控件示例
Oct 12 #Javascript
JavaScript对象学习经验整理
Oct 12 #Javascript
You might like
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
Laravel 读取 config 下的数据方法
2019/10/13 PHP
用tip解决Ext列宽度不够的问题
2008/12/13 Javascript
jquery-easyui关闭tab自动切换到前一个tab
2010/07/29 Javascript
javascript搜索框效果实现方法
2015/05/14 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
jquery实现的横向二级导航效果代码
2015/08/26 Javascript
Eclipse编辑jsp、js文件时卡死现象的解决办法汇总
2016/02/02 Javascript
jQuery基本选择器之标签名选择器
2016/09/03 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
vue-cli 脚手架基于Nightwatch的端到端测试环境的过程
2018/09/30 Javascript
在Vant的基础上封装下拉日期控件的代码示例
2018/12/05 Javascript
javascript中this的用法实践分析
2019/07/29 Javascript
[02:32]DOTA2英雄基础教程 美杜莎
2014/01/07 DOTA
python实现的udp协议Server和Client代码实例
2014/06/04 Python
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
浅谈python中的实例方法、类方法和静态方法
2017/02/17 Python
利用python实现简单的邮件发送客户端示例
2017/12/23 Python
Python 数据处理库 pandas进阶教程
2018/04/21 Python
使用pycharm生成代码模板的实例
2018/05/23 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
2018/05/24 Python
Sanic框架流式传输操作示例
2018/07/18 Python
简单了解python代码优化小技巧
2019/07/08 Python
Python Subprocess模块原理及实例
2019/08/26 Python
tensorflow指定CPU与GPU运算的方法实现
2020/04/21 Python
Python使用shutil模块实现文件拷贝
2020/07/31 Python
python subprocess pipe 实时输出日志的操作
2020/12/05 Python
CSS3之2D与3D变换的实现方法
2019/01/28 HTML / CSS
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
捷克领先的户外服装及配件市场零售商:ALPINE PRO
2018/01/09 全球购物
来自南加州灵感的工作和娱乐服装:TravisMathew
2019/05/01 全球购物
建筑公司文秘岗位职责
2013/11/29 职场文书
标准自荐信范文
2014/01/29 职场文书
机关单位动员会主持词
2014/03/20 职场文书
优秀团队申报材料
2014/12/26 职场文书
竞聘演讲报告:基本写作有哪些?附开头范文
2019/10/16 职场文书