Merge pull request #182 from ZhuangER/yu-huang

fix a nav bar's bug
This commit is contained in:
life
2015-09-05 22:47:34 +08:00
3 changed files with 51 additions and 33 deletions

View File

@ -11,20 +11,3 @@
<script src="/public/admin/js/artDialog/jquery.artDialog.js?skin=default"></script>
<script src="/public/js/common.js"></script>
<script src="/public/admin/js/admin.js"></script>
<script>
$(function() {
var pathname = location.pathname; // admin/t
var search = location.search; // ?t=xxx, 如果有?page呢
var fullPath = pathname;
if(search.indexOf("?t=") >= 0) {
var fullPath = pathname + search; // /admin/t?t=xxx
}
$("#nav > li").removeClass("active");
// 自己
var $thisLi = $('#nav a[href^="' + fullPath + '"]').parent();
$thisLi.addClass("active");
// 父也active
$thisLi.parent().parent().addClass('active');
});
</script>

View File

@ -274,21 +274,56 @@ function goNowToDatetime(goNow) {
!function ($) {
$(function(){
// life
$(".nav li > a").click(function(e) {
$p = $(this).closest("ul");
var $li = $(this).closest("li");
if($li.find("ul").length == 0) {
return true;
}
e.preventDefault();
var hasClass = $li.hasClass("active");
$p.find("li").removeClass("active");
if(hasClass) {
} else {
$li.addClass("active");
}
});
//navigation
!function ($) {
/**
* description
* every href must begin with "?t="
*/
//initial
function getParameterByName(name, queryString) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); //address array [] condiion
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(queryString);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
var pathname = window.location.pathname; // admin/t
var search = window.location.search; // ?t=xxx
var fullPath = pathname;
//test case
//http://localhost:9000/admin/t?p=0&t=email/sendToUsers
//t=email/sendToUsers and t=email/send
var paramId = getParameterByName("t",window.location.search)
if(paramId !== "") {
var fullPath = pathname + "?t=" + paramId; // /admin/t?t=xxx
}
$("#nav > li").removeClass("active");
var $thisLi = $('#nav a[href="' + fullPath + '"]').parent();
// 自己
$thisLi.addClass("active");
// 父也active
$thisLi.parent().parent().addClass('active');
// event binding
$(".nav li > a").click(function(e) {
$p = $(this).closest("ul");
var $li = $(this).closest("li");
if($li.find("ul").length == 0) {
return true;
}
e.preventDefault();
var hasClass = $li.hasClass("active");
$p.find("li").removeClass("active");
if(hasClass) {
} else {
$li.addClass("active");
}
});
}($);
// sort
$(".th-sortable").click(function() {
@ -566,4 +601,4 @@ function goNowToDatetime(goNow) {
});
}(window.jQuery);
}(window.jQuery);