瀏覽代碼

Added some extra functionality

Previnash Wong 8 年之前
父節點
當前提交
ec4b468f9f
共有 8 個文件被更改,包括 33 次插入11 次删除
  1. 17 7
      dropdown.js
  2. 5 2
      index.html
  3. 1 1
      scss/app.css
  4. 1 1
      scss/app.css.map
  5. 8 0
      scss/app.scss
  6. 0 0
      scss/dropdown.css
  7. 0 0
      scss/dropdown.css.map
  8. 1 0
      scss/dropdown.scss

+ 17 - 7
dropdown.js

@@ -23,6 +23,7 @@ dropdown_count = 0;
 		
 
 		this.on('click', function(){
+
 			animate(getDropdownElement($(this)));
 		})
 
@@ -46,7 +47,9 @@ dropdown_count = 0;
 		active_background: "#fff",
 		placeholder_color: "#000",
 		placeholder_active_color: "#000",
-		link_color: "#000"
+		link_color: "#000",
+		vertical_padding: "20px",
+		horizontal_padding: "40px"
 	}
 
 
@@ -67,6 +70,8 @@ dropdown_count = 0;
 		var placeholder_color = opts["placeholder_color"]
 		var placeholder_active_color = opts["placeholder_active_color"]
 		var link_color = opts["link_color"]
+		var vertical_padding = opts["vertical_padding"]
+		var horizontal_padding = opts["horizontal_padding"]
 
 		options.each(function(){
 			if ( $(this).attr('selected') == "selected") {
@@ -89,7 +94,7 @@ dropdown_count = 0;
 
 
 		var dropdown_html = '<div id="euler_'+ id_html +'" data-select="'+ id_html +'" class = "'+ classes +'"><div style="background:'+ active_background +'" class = "bg"></div>';
-			dropdown_html += '<div class = "front_face">'
+			dropdown_html += '<div style="padding:'+ vertical_padding +' '+ horizontal_padding +'" class = "front_face">'
 				dropdown_html += '<div style="background:'+ background +'" class = "bg"></div>'
 				dropdown_html += '<div data-inactive-color="'+ placeholder_active_color +'" style="color:'+ placeholder_color +'" class = "content">'
 					if ( selected !== false ) {
@@ -99,7 +104,7 @@ dropdown_count = 0;
 					dropdown_html += '<i class = "icon">'+ icon(placeholder_color) +'</i>'
 				dropdown_html += '</div>'
 			dropdown_html += '</div>';
-			dropdown_html += '<div class = "back_face"><ul style="color:'+ link_color +'">'
+			dropdown_html += '<div style="padding:'+ vertical_padding +' '+ horizontal_padding +'" class = "back_face"><ul style="color:'+ link_color +'">'
 				dropdown_html += options_html
 			dropdown_html += '</ul></div>';
 		dropdown_html += '</div>';
@@ -112,13 +117,15 @@ dropdown_count = 0;
 	}
 
 	function animate(element){
+		if ( element.hasClass('animating') == false ) {
+			element.addClass('animating')
 		if ( $('.dropdown.animate').length > 0 ) { 
 			deanimate($('.dropdown').not(element))
 			var timeout = 600
 		} else { 
 			var timeout = 100
 		}
-
+		
 		setTimeout(function(){
 			var back_face = element.find('.back_face')
 			back_face.show()
@@ -133,18 +140,21 @@ dropdown_count = 0;
 				"margin-top" : $(element).outerHeight()
 			})
 			
-			switchPlaceholderColor(element)
+			
 			element.addClass('placeholder_animate')
 			setTimeout(function(){
+				switchPlaceholderColor(element)
 				if ( back_face.outerHeight() == 200 ) {
 					back_face.addClass('overflow')
 				}
 				element.addClass('placeholder_animate2')
 				element.addClass('animate')
 				element.addClass('animate2')
+				element.removeClass('animating')
 				
 			}, 100)
 		}, timeout)
+		}
 	}
 
 	function deanimate(dropdowns){
@@ -155,7 +165,7 @@ dropdown_count = 0;
 		}
 			$(dropdown).each(function(){
 				var element = $(this);
-				if ( element.hasClass('animate2') ) { 
+				if ( element.hasClass('animate') ) { 
 				setTimeout(function(){
 					element.removeClass('animate2')
 					setTimeout(function(){
@@ -218,7 +228,7 @@ function hello(value){
 
 $(document).ready(function(){
 	$('body').on('click', '.dropdown', function(){
-		if ( $(this).hasClass('animate2') == false )  {
+		if ( $(this).hasClass('animate') == false )  {
 			$('select#' + $(this).attr('id').replace('euler_', '')).trigger('click')
 		}
 	

+ 5 - 2
index.html

@@ -13,10 +13,12 @@
 
 			$('select.dark').dropdown({
 				background: "#0f37a9",
-				active_background:"#fff",
+				active_background:"rgb(149, 211, 255)",
 				placeholder_color: "#97bce0",
 				placeholder_active_color: "#0f37a9",
-				link_color:"#000"
+				link_color:"#405463",
+				vertical_padding: "15px",
+				horizontal_padding: "20px"
 			})
 
 
@@ -28,6 +30,7 @@
 <body>
 	<div class="row">
 	<div id = "content">
+		<h2 class = "title">Awesome Dropdown <span class = "version">v0.0.1</span></h2>
 		<div class = "divider">
 		<select class="light" data-callback="hello" data-placeholder="Select an option">
 			<option value="1">Option 1</option>

+ 1 - 1
scss/app.css

@@ -1,2 +1,2 @@
-#content{padding:100px 0}.divider{float:left;width:100%;margin:20px 0}
+#content{padding:100px 0}.divider{float:left;width:100%;margin:20px 0}.title{font-size:29px}.title .version{font-size:16px}
 /*# sourceMappingURL=app.css.map */

+ 1 - 1
scss/app.css.map

@@ -1,6 +1,6 @@
 {
 "version": 3,
-"mappings": "AAAA,QAAS,CACR,OAAO,CAAC,OAAO,CAGhB,QAAS,CACR,KAAK,CAAC,IAAI,CACV,KAAK,CAAC,IAAI,CACV,MAAM,CAAC,MAAM",
+"mappings": "AAAA,QAAS,CACR,OAAO,CAAC,OAAO,CAGhB,QAAS,CACR,KAAK,CAAC,IAAI,CACV,KAAK,CAAC,IAAI,CACV,MAAM,CAAC,MAAM,CAGd,MAAO,CACN,SAAS,CAAC,IAAI,CACd,eAAS,CACR,SAAS,CAAC,IAAI",
 "sources": ["app.scss"],
 "names": [],
 "file": "app.css"

+ 8 - 0
scss/app.scss

@@ -6,4 +6,12 @@
 	float:left;
 	width:100%;
 	margin:20px 0;
+}
+
+
+.title {
+	font-size:29px;
+	.version {
+		font-size:16px;
+	}
 }

File diff suppressed because it is too large
+ 0 - 0
scss/dropdown.css


File diff suppressed because it is too large
+ 0 - 0
scss/dropdown.css.map


+ 1 - 0
scss/dropdown.scss

@@ -92,6 +92,7 @@ transition: .4s cubic-bezier(.19,1,.22,1);
 			overflow-y:scroll;
 		}
 		ul {
+			margin:0;
 			float:left;
 				width:100%;
 			li {

Some files were not shown because too many files changed in this diff