fix nav bar

This commit is contained in:
afc163 2015-05-26 11:54:42 +08:00
parent 3542848648
commit b07d10bf5c

View File

@ -16,112 +16,4 @@ $(function() {
$(item).find('.highlight').slideToggle(150); $(item).find('.highlight').slideToggle(150);
item.toggleClass('code-box-expand'); item.toggleClass('code-box-expand');
} }
var navFunc={
navStrArr: [],
init:function (){
var self=this;
self.navBox = $(".nav");
self.navBar = self.navBox.find(".bar");
self.navList = self.navBox.find("ul li");
self.navNum=$(".current").index();
self.search($(".search"));
self.navBarAnim();
self.navResize(null);
$(window).bind("resize", self.navResize);
},
navResize: function (e) {
var self = navFunc;
self.navBar.css("left", self.navList.width() * self.navNum)//.addClass("barAnim");
self.navList.eq(self.navNum).find("a").addClass("hover");
},
search: function (c) {
var self = this;
self.searchBox = c;
self.searchInput = self.searchBox.find("input[type='text']");
self.searchBtn = self.searchBox.find("button");
self.searchInput.focus(function (e) {
$(this).addClass("focus");
self.searchBtn.css("left", self.searchBox.width() + 13);
});
self.searchInput.blur(function (e) {
if (!self.searchInput.val()) {
self.searchBtn.attr("style", "");
$(this).removeClass("focus");
}
});
self.searchBtn.click(function (e) {
self.searchBox.find("form").submit();
})
},
navBarAnim: function () {
var self = this,delay;
function startBarAnim(num) {
self.navBar.css("left", self.navList.width() * num);
self.navList.eq(num).find("a").addClass("hover");
}
self.navList.bind("mouseenter", function (e) {
clearTimeout(delay);
var m = e.currentTarget;
self.navList.find("a").removeClass("hover");
self.navBar.addClass("barAnim").css("left", $(m).width() * $(m).index())
});
self.navList.bind("mouseleave", function (e) {
delay = setTimeout(function () {
startBarAnim(self.navNum)
}, 500);
});
}
}
for (var i = 0; i < self.navStrArr.length; i++) {
if(links=="/"){
self.navNum=0;
break;
}
if ((self.navStrArr[i].indexOf(links)>=0||links.indexOf(self.navStrArr[i])>=0)&&i!==0) {
self.navNum = i;
break;
}
}
},
search: function (c) {
var self = this;
self.searchBox = c;
self.searchInput = self.searchBox.find("input[type='text']");
self.searchBtn = self.searchBox.find("button");
self.searchInput.focus(function (e) {
$(this).addClass("focus");
self.searchBtn.css("left", self.searchBox.width() + 13);
});
self.searchInput.blur(function (e) {
if (!self.searchInput.val()) {
self.searchBtn.attr("style", "");
$(this).removeClass("focus");
}
});
self.searchBtn.click(function (e) {
self.searchBox.find("form").submit();
})
},
navBarAnim: function () {
var self = this,delay;
function startBarAnim(num) {
self.navBar.css("left", self.navList.width() * num);
self.navList.eq(num).find("a").addClass("hover");
}
self.navList.bind("mouseenter", function (e) {
clearTimeout(delay);
var m = e.currentTarget;
self.navList.find("a").removeClass("hover");
self.navBar.addClass("barAnim").css("left", $(m).width() * $(m).index())
});
self.navList.bind("mouseleave", function (e) {
delay = setTimeout(function () {
startBarAnim(self.navNum)
}, 500);
});
}
};
navFunc.init()
}); });