您的位置:首页 > Web前端

前端实现标签切换跳转

2015-09-02 09:41 239 查看
思路:根据URL的参数构建href属性,并给标签着色。。。

//解析url

function get_url_obj() {

var url = window.location.href;

var _argument = url.split("?")[1];

var items = _argument.split("&");

var arr, result = {};

for (var i = 0; i < items.length; i++) {

arr = items[i].split("=");

result[arr[0]] = arr[1];

}

return result;

}

//加载页面时,根据URL的参数构建href属性,并给标签着色。。。

function add_color() {

var result = get_url_obj();

var parm_type = $(".search a");

parm_type.each(function() {

var $this = $(this);

var data_param = $this.attr("data-param");

var para_arr = data_param.split("=");

var parm_key = para_arr[0];

var param_val = para_arr[1];

//给a标签加路径

for (var key in result) {

if ($this.attr("data-param") && $this.attr("data-param").match("=")) {

if (key == parm_key && result[key] == param_val) {

$this.parent().find("a").removeClass("select_on select_off");

$this.addClass("select_on");

$this.siblings("a").addClass("select_off");

}

} else {

}

}

if(param_val !== null && param_val !== undefined){

result[parm_key] = param_val;

}else{

delete result[parm_key];

}

$this.attr("href", window.location.href.split("?")[0] + _serializable(result));

result = get_url_obj();

function _serializable(obj){

if(obj){

var str = '?';

for(var i in obj){

if(obj.hasOwnProperty){

str += i +'=' + obj[i] + '&';

}

}

return str.slice(0,-1);

}

return null;

}

});

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: