我正在更新我们的Accordion菜单(导航)并尝试删除“SlideUp”功能。而不是像“手风琴”一样打开,我宁愿我们的菜单下拉并覆盖页面内容的其余部分。
这是我的JS ...现在它使用jquery.extend但我知道它应该是切换属性和更改一些逻辑以查看此功能的工作。
这是我的js:
// open-close plugin
jQuery.fn.OpenClose = function(_options){
// default options
var _options = jQuery.extend({
activeClass:'active',
opener:'.open-close',
slider:'.slide',
slideSpeed: 400,
animStart:false,
animEnd:false,
event:'click'
},_options);
return this.each(function(){
// options
var _holder = jQuery(this);
var _slideSpeed = _options.slideSpeed;
var _activeClass = _options.activeClass;
var _opener = jQuery(_options.opener, _holder);
var _slider = jQuery(_options.slider, _holder);
var _animStart = _options.animStart;
var _animEnd = _options.animEnd;
var _event = _options.event;
if(_slider.length) {
_opener.bind(_event,function(){
if(!_slider.is(':animated')) {
if(typeof _animStart === 'function') _animStart();
if(_holder.hasClass(_activeClass)) {
_slider.slideUp(_slideSpeed,function(){
if(typeof _animEnd === 'function') _animEnd();
});
_holder.removeClass(_activeClass);
} else {
_holder.addClass(_activeClass);
_slider.slideDown(_slideSpeed,function(){
if(typeof _animEnd === 'function') _animEnd();
});
}
}
return false;
});
if(_holder.hasClass(_activeClass)) _slider.show();
else _slider.hide();
}
});
}