Skip to content

Commit

Permalink
Added build files
Browse files Browse the repository at this point in the history
  • Loading branch information
makotokw committed Feb 12, 2017
1 parent 8fb1394 commit cccfb56
Show file tree
Hide file tree
Showing 6 changed files with 167 additions and 5 deletions.
5 changes: 1 addition & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@

jquery.ui.potato.menu
=======================

Simple Drop Down Menu for jQuery.

## Usage and Demo

[Here][DEMO]
https://makotokw.com/portfolio/jquery/ui_potato_menu/

## License

The MIT License

[DEMO]: http://makotokw.github.com/jquery/ui_potato_menu/
52 changes: 52 additions & 0 deletions dist/jquery.ui.potato.menu.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
/*!
* jquery.ui.potato.menu
*
* Copyright (c) 2009-2017 makoto_kw, https://makotokw.com
*
* @author makoto_kw
* @version 1.2.2
* @license MIT
*/
.potato-menu {
margin: 0;
padding: 0;
width: auto;
list-style: none;
}

.potato-menu:after {
content: " ";
display: block;
visibility: hidden;
clear: both;
height: 0.1px;
font-size: 0.1em;
line-height: 0;
}

.potato-menu .potato-menu-item {
padding: 0;
position: relative;
list-style: none;
list-style-position: outside;
display: inline;
margin: 0;
float: left;
}

.potato-menu .potato-menu-item a {
display: block;
text-decoration: none;
white-space: nowrap;
outline: 0;
}

.potato-menu .potato-menu-group {
margin: 0;
padding: 0;
-webkit-padding-start: 0;
-webkit-padding-end: 0;
position: absolute;
display: none;
z-index: 1000;
}
94 changes: 94 additions & 0 deletions dist/jquery.ui.potato.menu.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
/*!
* jquery.ui.potato.menu
*
* Copyright (c) 2009-2017 makoto_kw, https://makotokw.com
*
* @author makoto_kw
* @version 1.2.2
* @license MIT
*/
(function ($) {

var defaults = {
vertical: false,
menuItemSelector: 'li',
menuGroupSelector: 'ul',
rootClass: 'potato-menu',
menuItemClass: 'potato-menu-item',
menuGroupClass: 'potato-menu-group',
verticalClass: 'potato-menu-vertical',
horizontalClass: 'potato-menu-horizontal',
hasVerticalClass: 'potato-menu-has-vertical',
hasHorizontalClass: 'potato-menu-has-horizontal',
hoverClass: 'potato-menu-hover',
showDuration: 350,
hideDuration: 100,
hideDelayDuration: 0
};

function menu() {
var option = (typeof(arguments[0]) != 'string') ? $.extend({}, defaults, arguments[0]) : $.extend({}, defaults);

// Horizontal:
// ul.potato-menu-group,potato-menu-horizontal
// > li.potato-menu-item,potato-menu-has-vertical
// > ul.potato-menu-group,potato-menu-vertical
// > li.potato-menu-item,potato-menu-has-horizontal
// > ....
//
// Vertical
// ul.potato-menu-group,potato-menu-vertical
// > li.potato-menu-item,potato-menu-has-horizontal
// > ul.potato-menu-group,potato-menu-horizontal
// > li.potato-menu-item,potato-menu-has-vertical
// > ....
var topMenuGroupClass = (option.vertical) ? option.verticalClass : option.horizontalClass,
$menu = $(this).addClass(option.rootClass + ' ' + option.menuGroupClass + ' ' + topMenuGroupClass),
$menuItems = $menu.find(option.menuItemSelector).addClass(option.menuItemClass),
$menuGroups = $menu.find(option.menuGroupSelector).addClass(option.menuGroupClass);

$menuItems.hover(
function (/*e*/) {
$(this).addClass(option.hoverClass);
},
function (/*e*/) {
$(this).removeClass(option.hoverClass);
}
);
$menuGroups.parent().each(function (/*index*/) {
var $parentMenuItem = $(this); // menu item that has menu group
var displayDirection = ($parentMenuItem.parent().hasClass(option.horizontalClass)) ? 'bottom' : 'right';
$parentMenuItem.addClass((displayDirection == 'bottom') ? option.hasVerticalClass : option.hasHorizontalClass);
var $menuGroup = $parentMenuItem.find(option.menuGroupSelector + ':first').addClass(option.verticalClass);
$parentMenuItem.hover(
function (/*e*/) {
$menuGroup.stop(true, true);
var offset = {left: '', top: ''};
if (displayDirection == 'bottom') {
offset.left = 0;
} else {
offset.left = $(this).width() + 'px';
offset.top = '0px';
}
$menuGroup.css(offset).fadeIn(option.showDuration);
},
function (/*e*/) {
if (option.hideDelayDuration > 0) {
$menuGroup.delay(option.hideDelayDuration).fadeOut(option.hideDuration);
} else {
$menuGroup.fadeOut(option.hideDuration);
}
}
);
});
$menu.find('a[href^="#"]').click(function () {
$menuGroups.fadeOut(option.hideDuration);
return ($(this).attr('href') != '#');
});
return this;
}

$.fn.extend({
ptMenu: menu
});
})(jQuery);
9 changes: 9 additions & 0 deletions dist/jquery.ui.potato.menu.min.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/*!
* jquery.ui.potato.menu
*
* Copyright (c) 2009-2017 makoto_kw, https://makotokw.com
*
* @author makoto_kw
* @version 1.2.2
* @license MIT
*/.potato-menu{margin:0;padding:0;width:auto;list-style:none}.potato-menu:after{content:" ";display:block;visibility:hidden;clear:both;height:.1px;font-size:.1em;line-height:0}.potato-menu .potato-menu-item{padding:0;position:relative;list-style:none;display:inline;margin:0;float:left}.potato-menu .potato-menu-item a{display:block;text-decoration:none;white-space:nowrap;outline:0}.potato-menu .potato-menu-group{margin:0;padding:0;-webkit-padding-start:0;-webkit-padding-end:0;position:absolute;display:none;z-index:1000}
10 changes: 10 additions & 0 deletions dist/jquery.ui.potato.menu.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "jquery.ui.potato.menu",
"version": "1.2.1",
"version": "1.2.2",
"description": "Simple Drop Down Menu for jQuery",
"main": "src/jquery.ui.potato.menu.js",
"repository": {
Expand Down

0 comments on commit cccfb56

Please sign in to comment.