我正在寻找jQuery的下拉插件,因为我的应用程序有多个下拉菜单。所需功能与StackOverflow配置文件插入符号非常相似。jQuery下拉插件 - 任何支持插件吗?
我发现这一点:http://davidwalsh.name/twitter-dropdown-jquery
但考虑到不是感觉很凌乱的插件。任何人都知道一个插件,可以让我在我的网站上干下拉?
感谢
我正在寻找jQuery的下拉插件,因为我的应用程序有多个下拉菜单。所需功能与StackOverflow配置文件插入符号非常相似。jQuery下拉插件 - 任何支持插件吗?
我发现这一点:http://davidwalsh.name/twitter-dropdown-jquery
但考虑到不是感觉很凌乱的插件。任何人都知道一个插件,可以让我在我的网站上干下拉?
感谢
我清理了一下代码,并使其插件十岁上下。不是很优雅(代码不漂亮有开始),但它应该工作:
jQuery.fn.twitterMenu = function() {
return this.each(function() {
var dropdown = $(this);
var menu = dropdown.next('div.dropdown-menu');
var parent = dropdown.parent();
var activeClass = 'dropdown-active';
var showingDropdown = false;
var showingDropdown, showingMenu, showingParent;
dropdown.click(function(e) {
e.stopPropagation();
e.preventDefault();
if (showingDropdown) {
dropdown.removeClass(activeClass);
showingMenu.hide();
showingDropdown = false;
} else {
showingDropdown = true;
showingMenu = menu;
showingParent = parent;
menu.show();
dropdown.addClass(activeClass);
}
});
$('body').click(function(e) {
if (showingParent) {
var parentElement = showingParent[0];
if (!$.contains(parentElement, e.target) || !parentElement == e.target) {
hideMenu();
}
}
});
});
};
你使用这样的:
$(document).ready(function() {
$('.dropdown').twitterMenu();
});
谢谢,但这不是一个插件,这是我想避免的一个实例的解决方案。 – AnApprentice
你可以使它成为像3行代码一样的插件。 – Blender
搅拌机?为jsfiddle? – AnApprentice
当然。这是在我的答案。 – Blender