From fc66df8894a84af01135db003da9608d4eac4f3d Mon Sep 17 00:00:00 2001 From: Mario Volke Date: Thu, 6 Nov 2014 17:34:59 +0100 Subject: [PATCH 1/2] Close dropdown after selection has been made --- src/js/directives/common.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/js/directives/common.js b/src/js/directives/common.js index 3eeccab..1a24225 100644 --- a/src/js/directives/common.js +++ b/src/js/directives/common.js @@ -119,6 +119,9 @@ ngModule.directive('woDropdown', function($document, $timeout) { elm.on('touchstart click', toggle); + // close if user clicks button in dropdown list + dropdown.on('touchstart.woDropdown click.woDropdown', 'button', disappear); + // close if user clicks outside of dropdown and elm $document.on('touchstart.woDropdown click.woDropdown', function(e) { var t = angular.element(e.target); @@ -132,6 +135,7 @@ ngModule.directive('woDropdown', function($document, $timeout) { // remove event listener on document scope.$on('$destroy', function() { $document.off('touchstart.woDropdown click.woDropdown'); + dropdown.off('touchstart.woDropdown click.woDropdown'); }); }; }); From da872daa7d93512f1125e2992a6f0e1ec97b273d Mon Sep 17 00:00:00 2001 From: Mario Volke Date: Mon, 10 Nov 2014 13:51:20 +0100 Subject: [PATCH 2/2] fix dropdown toggle with touchstart --- src/js/directives/common.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/js/directives/common.js b/src/js/directives/common.js index 1a24225..e34cb8d 100644 --- a/src/js/directives/common.js +++ b/src/js/directives/common.js @@ -117,7 +117,10 @@ ngModule.directive('woDropdown', function($document, $timeout) { } } - elm.on('touchstart click', toggle); + elm.on('touchstart click', function(e) { + e.preventDefault(); + toggle(); + }); // close if user clicks button in dropdown list dropdown.on('touchstart.woDropdown click.woDropdown', 'button', disappear);