114 lines
3.9 KiB
JavaScript
114 lines
3.9 KiB
JavaScript
$(function () {
|
|
$(".version").text(Verify.version);
|
|
//添加菜单序号
|
|
$(".menubox dd").each(function (index, element) {
|
|
//次菜单项索引
|
|
var num = $(this).parent().find("dd").index($(this)) + 1;
|
|
$(this).html(num + "、" + $(this).html());
|
|
});
|
|
//菜单项事件
|
|
$(".menubox dd").click(function () {
|
|
//主菜单项索引
|
|
var index = $(this).parent().parent().find("dl").index($(this).parent()) + 1;
|
|
//次菜单项索引
|
|
var num = $(this).parent().find("dd").index($(this)) + 1;
|
|
//调取页面
|
|
var file = "Demo/" + index + "-" + num + ".htm";
|
|
history.pushState("", "", $().setPara(window.location.href, "file", file));
|
|
setFile(file);
|
|
});
|
|
//默认显示第一个菜单
|
|
var file = $().getPara("file");
|
|
if (file == "") $(".menubox dd:first").click();
|
|
if (file != "") setFile(file);
|
|
});
|
|
//设置右侧内容
|
|
function setFile(file) {
|
|
$(".context").attr("src", file);
|
|
var name = file.substring(file.indexOf("/") + 1, file.indexOf("."));
|
|
var arr = name.split("-");
|
|
//设置样式
|
|
$(".menubox dd").removeClass("curr");
|
|
var curr = $(".menubox:eq(" + (Number(arr[0]) - 1) + ")").find("dd:eq(" + (Number(arr[1]) - 1) + ")");
|
|
curr.addClass("curr");
|
|
}
|
|
|
|
/****** 扩展方法,给地址栏添加参数以及取参数
|
|
*/
|
|
//获取QueryString参数
|
|
jQuery.fn.getPara = function (url, key) {
|
|
if (arguments.length == 1) {
|
|
key = arguments[0];
|
|
url = String(window.document.location.href);
|
|
}
|
|
var value = "";
|
|
if (url.indexOf("?") > -1) {
|
|
var ques = url.substring(url.lastIndexOf("?") + 1);
|
|
var tm = ques.split('&');
|
|
for (var i = 0; i < tm.length; i++) {
|
|
var arr = tm[i].split('=');
|
|
if (arr.length < 2) continue;
|
|
if (key.toLowerCase() == arr[0].toLowerCase()) {
|
|
value = arr[1];
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
return value;
|
|
}
|
|
//添加链接地址的参数
|
|
//url:超链接
|
|
//key:参数的名称
|
|
//value:参数的值
|
|
jQuery.fn.setPara = function (url, key, value) {
|
|
if (isNull(url) || isNull(key)) return url; //如果网址或参数名为空,则返回
|
|
//如果没有参数,直接添加
|
|
if (url.indexOf("?") < 0) return url + "?" + key + "=" + value;
|
|
//如果已经有参数
|
|
var paras = getParas(url);
|
|
paras = setPara(paras, key, value);
|
|
url = url.substring(0, url.lastIndexOf("?"));
|
|
return url + "?" + stringPara(paras);
|
|
function isNull(data) {
|
|
return (data == "" || data == undefined || data == null) ? true : false;
|
|
}
|
|
//将参数转换成数组格式
|
|
function getParas(url) {
|
|
if (url.indexOf("?") > -1) url = url.substring(url.lastIndexOf("?") + 1);
|
|
var tm = url.split('&');
|
|
var paras = new Array(); //要返回的数组
|
|
for (var i = 0; i < tm.length; i++) {
|
|
var arr = tm[i].split('=');
|
|
if (arr.length < 2) continue;
|
|
paras.push({ key: arr[0].toLowerCase(), value: arr[1] });
|
|
}
|
|
return paras;
|
|
}
|
|
//设置参数,如果不存在则添加
|
|
function setPara(paras, key, value) {
|
|
var isexist = false;
|
|
for (var i = 0; i < paras.length; i++) {
|
|
if (paras[i].key == key.toLowerCase()) {
|
|
isexist = true;
|
|
paras[i].value = value;
|
|
break;
|
|
}
|
|
}
|
|
if (!isexist) paras.push({ key: key, value: value });
|
|
return paras;
|
|
}
|
|
//将数组的参数转换为url参数格式
|
|
function stringPara(paras) {
|
|
var str = "";
|
|
for (var i = 0; i < paras.length; i++) {
|
|
if (paras[i].value == null) continue;
|
|
str += paras[i].key + "=" + paras[i].value + "&";
|
|
}
|
|
if (str.length > 0) {
|
|
if (str.charAt(str.length - 1) == "&") {
|
|
str = str.substring(0, str.length - 1)
|
|
}
|
|
}
|
|
return str;
|
|
}
|
|
} |