From 79aeeab6c22b1318809fa409050dceae09aa0bed Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 13:39:25 -0700 Subject: [PATCH 01/15] added onclick attrs to change hover mode --- src/angular-hovercard.js | 18 ++++++++++++++++++ template/angular-hovercard.tmpl | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 9fbad3b..46ac685 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -63,6 +63,24 @@ angular.module('yaru22.hovercard', [ $scope.hoverCardStyle.right = ''; } } // if (placement) + + + if ($attrs.onclick) { + $element.on('click', function() { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } else { + $element.on('mouseenter', function() { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } + $element.on('mouseleave', function() { + $scope.showCard = false; + $scope.onHoverOut(); + }); + } // link function }; }); diff --git a/template/angular-hovercard.tmpl b/template/angular-hovercard.tmpl index 39a97e5..ec724ad 100644 --- a/template/angular-hovercard.tmpl +++ b/template/angular-hovercard.tmpl @@ -1,4 +1,4 @@ -
+
From 3eee1a62f680d013de08594b7d1755c0f6246eb2 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 13:47:30 -0700 Subject: [PATCH 02/15] new dist files --- dist/angular-hovercard.css | 44 --------------------- dist/angular-hovercard.js | 71 ---------------------------------- dist/angular-hovercard.min.css | 1 - dist/angular-hovercard.min.js | 8 ---- 4 files changed, 124 deletions(-) delete mode 100644 dist/angular-hovercard.css delete mode 100644 dist/angular-hovercard.js delete mode 100644 dist/angular-hovercard.min.css delete mode 100644 dist/angular-hovercard.min.js diff --git a/dist/angular-hovercard.css b/dist/angular-hovercard.css deleted file mode 100644 index b5bbc4f..0000000 --- a/dist/angular-hovercard.css +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Angular hovercard directive. - * @version v1.0.3 - 2015-06-29 - * @link https://github.com/yaru22/angular-hovercard - * @author Brian Park - * @license MIT License, http://www.opensource.org/licenses/MIT - */ -.angular-hovercard { - display: inline-block; - position: relative; -} - -.angular-hovercard-label { - color: #c0392b; - position: relative; -} - -.angular-hovercard-label.angular-hovercard-active { - z-index: 99; -} - -.angular-hovercard-detail { - -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; - - -webkit-transition: opacity 0.5s; - -moz-transition: opacity 0.5s; - -o-transition: opacity 0.5s; - transition: opacity 0.5s; - - background: white; - border: 1px solid #ddd; - opacity: 0; - position: absolute; - visibility: hidden; - width: 400px; - z-index: 98; -} - -.angular-hovercard-detail.angular-hovercard-active { - opacity: 1; - visibility: visible; -} diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js deleted file mode 100644 index 8cecba4..0000000 --- a/dist/angular-hovercard.js +++ /dev/null @@ -1,71 +0,0 @@ -/** - * Angular hovercard directive. - * @version v1.0.3 - 2015-06-29 - * @link https://github.com/yaru22/angular-hovercard - * @author Brian Park - * @license MIT License, http://www.opensource.org/licenses/MIT - */ -/* global angular */ -'use strict'; -angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hovercard', function () { - return { - restrict: 'E', - transclude: true, - templateUrl: 'template/angular-hovercard.tmpl', - scope: true, - link: function ($scope, $element, $attrs) { - $scope.show = {}; - $scope.show.card = false; - $scope.hoverTmplUrl = $attrs.hoverTmplUrl; - $scope.onHoverIn = $scope.$eval($attrs.onHoverIn); - $scope.onHoverOut = $scope.$eval($attrs.onHoverOut); - var placement = $attrs.placement || 'bottomRight'; - $scope.hoverLabelStyle = {}; - if ($attrs.labelColor) { - $scope.hoverLabelStyle.color = $attrs.labelColor; - } - $scope.hoverCardStyle = {}; - if ($attrs.background) { - $scope.hoverCardStyle.background = $attrs.background; - } - if ($attrs.width) { - $scope.hoverCardStyle.width = $attrs.width; - } - if (placement) { - // Split placement string into two words: - // e.g. bottomLeft -> ["bottom", "left"] - var positionStrings = placement.replace(/([A-Z])/g, ' $1').toLowerCase().split(' '); - var positionObj = {}; - positionObj[positionStrings[0]] = true; - positionObj[positionStrings[1]] = true; - if (positionObj.bottom) { - $scope.hoverCardStyle.bottom = ''; - $scope.hoverCardStyle.top = '-1em'; - $scope.hoverCardStyle['padding-bottom'] = ''; - $scope.hoverCardStyle['padding-top'] = '3em'; - } - if (positionObj.top) { - $scope.hoverCardStyle.bottom = '-1em'; - $scope.hoverCardStyle.top = ''; - $scope.hoverCardStyle['padding-bottom'] = '3em'; - $scope.hoverCardStyle['padding-top'] = ''; - } - if (positionObj.left) { - $scope.hoverCardStyle.left = ''; - $scope.hoverCardStyle.right = '-1em'; - } - if (positionObj.right) { - $scope.hoverCardStyle.left = '-1em'; - $scope.hoverCardStyle.right = ''; - } - } // if (placement) - } // link function - }; -}); -angular.module('yaru22.hovercard.tmpls', []).run([ - '$templateCache', - function ($templateCache) { - 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); - } -]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.css b/dist/angular-hovercard.min.css deleted file mode 100644 index 63072c3..0000000 --- a/dist/angular-hovercard.min.css +++ /dev/null @@ -1 +0,0 @@ -.angular-hovercard{display:inline-block;position:relative}.angular-hovercard-label{color:#c0392b;position:relative}.angular-hovercard-label.angular-hovercard-active{z-index:99}.angular-hovercard-detail{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;background:#fff;border:1px solid #ddd;opacity:0;position:absolute;visibility:hidden;width:400px;z-index:98}.angular-hovercard-detail.angular-hovercard-active{opacity:1;visibility:visible} \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js deleted file mode 100644 index 9c3585b..0000000 --- a/dist/angular-hovercard.min.js +++ /dev/null @@ -1,8 +0,0 @@ -/** - * Angular hovercard directive. - * @version v1.0.3 - 2015-06-29 - * @link https://github.com/yaru22/angular-hovercard - * @author Brian Park - * @license MIT License, http://www.opensource.org/licenses/MIT - */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file From 77fc7fc26319ca3e1cbc2fc556613a22fda290f9 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:03:38 -0700 Subject: [PATCH 03/15] got tests passing and new distribution --- demo/angular-hovercard.css | 2 +- demo/angular-hovercard.js | 22 +++++++-- dist/angular-hovercard.css | 44 +++++++++++++++++ dist/angular-hovercard.js | 87 ++++++++++++++++++++++++++++++++++ dist/angular-hovercard.min.css | 1 + dist/angular-hovercard.min.js | 8 ++++ test/unit/hovercardSpec.js | 4 +- 7 files changed, 162 insertions(+), 6 deletions(-) create mode 100644 dist/angular-hovercard.css create mode 100644 dist/angular-hovercard.js create mode 100644 dist/angular-hovercard.min.css create mode 100644 dist/angular-hovercard.min.js diff --git a/demo/angular-hovercard.css b/demo/angular-hovercard.css index b5bbc4f..2886aad 100644 --- a/demo/angular-hovercard.css +++ b/demo/angular-hovercard.css @@ -1,6 +1,6 @@ /** * Angular hovercard directive. - * @version v1.0.3 - 2015-06-29 + * @version v1.0.3 - 2015-10-20 * @link https://github.com/yaru22/angular-hovercard * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 8cecba4..6830dec 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -1,6 +1,6 @@ /** * Angular hovercard directive. - * @version v1.0.3 - 2015-06-29 + * @version v1.0.3 - 2015-10-20 * @link https://github.com/yaru22/angular-hovercard * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT @@ -58,7 +58,23 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc $scope.hoverCardStyle.left = '-1em'; $scope.hoverCardStyle.right = ''; } - } // if (placement) + } + // if (placement) + if ($attrs.onclick) { + $element.on('click', function () { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } else { + $element.on('mouseenter', function () { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } + $element.on('mouseleave', function () { + $scope.showCard = false; + $scope.onHoverOut(); + }); } // link function }; }); @@ -66,6 +82,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.css b/dist/angular-hovercard.css new file mode 100644 index 0000000..2886aad --- /dev/null +++ b/dist/angular-hovercard.css @@ -0,0 +1,44 @@ +/** + * Angular hovercard directive. + * @version v1.0.3 - 2015-10-20 + * @link https://github.com/yaru22/angular-hovercard + * @author Brian Park + * @license MIT License, http://www.opensource.org/licenses/MIT + */ +.angular-hovercard { + display: inline-block; + position: relative; +} + +.angular-hovercard-label { + color: #c0392b; + position: relative; +} + +.angular-hovercard-label.angular-hovercard-active { + z-index: 99; +} + +.angular-hovercard-detail { + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + + -webkit-transition: opacity 0.5s; + -moz-transition: opacity 0.5s; + -o-transition: opacity 0.5s; + transition: opacity 0.5s; + + background: white; + border: 1px solid #ddd; + opacity: 0; + position: absolute; + visibility: hidden; + width: 400px; + z-index: 98; +} + +.angular-hovercard-detail.angular-hovercard-active { + opacity: 1; + visibility: visible; +} diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js new file mode 100644 index 0000000..6830dec --- /dev/null +++ b/dist/angular-hovercard.js @@ -0,0 +1,87 @@ +/** + * Angular hovercard directive. + * @version v1.0.3 - 2015-10-20 + * @link https://github.com/yaru22/angular-hovercard + * @author Brian Park + * @license MIT License, http://www.opensource.org/licenses/MIT + */ +/* global angular */ +'use strict'; +angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hovercard', function () { + return { + restrict: 'E', + transclude: true, + templateUrl: 'template/angular-hovercard.tmpl', + scope: true, + link: function ($scope, $element, $attrs) { + $scope.show = {}; + $scope.show.card = false; + $scope.hoverTmplUrl = $attrs.hoverTmplUrl; + $scope.onHoverIn = $scope.$eval($attrs.onHoverIn); + $scope.onHoverOut = $scope.$eval($attrs.onHoverOut); + var placement = $attrs.placement || 'bottomRight'; + $scope.hoverLabelStyle = {}; + if ($attrs.labelColor) { + $scope.hoverLabelStyle.color = $attrs.labelColor; + } + $scope.hoverCardStyle = {}; + if ($attrs.background) { + $scope.hoverCardStyle.background = $attrs.background; + } + if ($attrs.width) { + $scope.hoverCardStyle.width = $attrs.width; + } + if (placement) { + // Split placement string into two words: + // e.g. bottomLeft -> ["bottom", "left"] + var positionStrings = placement.replace(/([A-Z])/g, ' $1').toLowerCase().split(' '); + var positionObj = {}; + positionObj[positionStrings[0]] = true; + positionObj[positionStrings[1]] = true; + if (positionObj.bottom) { + $scope.hoverCardStyle.bottom = ''; + $scope.hoverCardStyle.top = '-1em'; + $scope.hoverCardStyle['padding-bottom'] = ''; + $scope.hoverCardStyle['padding-top'] = '3em'; + } + if (positionObj.top) { + $scope.hoverCardStyle.bottom = '-1em'; + $scope.hoverCardStyle.top = ''; + $scope.hoverCardStyle['padding-bottom'] = '3em'; + $scope.hoverCardStyle['padding-top'] = ''; + } + if (positionObj.left) { + $scope.hoverCardStyle.left = ''; + $scope.hoverCardStyle.right = '-1em'; + } + if (positionObj.right) { + $scope.hoverCardStyle.left = '-1em'; + $scope.hoverCardStyle.right = ''; + } + } + // if (placement) + if ($attrs.onclick) { + $element.on('click', function () { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } else { + $element.on('mouseenter', function () { + $scope.showCard = true; + $scope.onHoverIn(); + }); + } + $element.on('mouseleave', function () { + $scope.showCard = false; + $scope.onHoverOut(); + }); + } // link function + }; +}); +angular.module('yaru22.hovercard.tmpls', []).run([ + '$templateCache', + function ($templateCache) { + 'use strict'; + $templateCache.put('template/angular-hovercard.tmpl', '
'); + } +]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.css b/dist/angular-hovercard.min.css new file mode 100644 index 0000000..63072c3 --- /dev/null +++ b/dist/angular-hovercard.min.css @@ -0,0 +1 @@ +.angular-hovercard{display:inline-block;position:relative}.angular-hovercard-label{color:#c0392b;position:relative}.angular-hovercard-label.angular-hovercard-active{z-index:99}.angular-hovercard-detail{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;background:#fff;border:1px solid #ddd;opacity:0;position:absolute;visibility:hidden;width:400px;z-index:98}.angular-hovercard-detail.angular-hovercard-active{opacity:1;visibility:visible} \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js new file mode 100644 index 0000000..123a00d --- /dev/null +++ b/dist/angular-hovercard.min.js @@ -0,0 +1,8 @@ +/** + * Angular hovercard directive. + * @version v1.0.3 - 2015-10-20 + * @link https://github.com/yaru22/angular-hovercard + * @author Brian Park + * @license MIT License, http://www.opensource.org/licenses/MIT + */ +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}c.onclick?b.on("click",function(){a.showCard=!0,a.onHoverIn()}):b.on("mouseenter",function(){a.showCard=!0,a.onHoverIn()}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file diff --git a/test/unit/hovercardSpec.js b/test/unit/hovercardSpec.js index 12e37ec..455851a 100644 --- a/test/unit/hovercardSpec.js +++ b/test/unit/hovercardSpec.js @@ -27,14 +27,14 @@ describe('hovercard', function() { it('should create a label', inject(function() { - var label = elm.find('.angular-hovercard-label'); + var label = angular.element(elm[0].querySelector('.angular-hovercard-label')); //elm.find('.angular-hovercard-label'); expect(label).to.have.length(1); expect(label.eq(0).text().trim()).to.equal('Brian Park'); })); it('should load template specified on hover-tmpl-url', inject(function() { - var detail = elm.find('.angular-hovercard-detail'); + var detail = angular.element(elm[0].querySelector('.angular-hovercard-detail')); expect(detail).to.have.length(1); expect(detail.eq(0).text().trim()).to.equal('Hover card detail.'); From 55145abe4b2509ae506fe8af0f25c067a3b385e8 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:15:52 -0700 Subject: [PATCH 04/15] cleaned up trigger and added delay attribute --- src/angular-hovercard.js | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 46ac685..b14246d 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -64,21 +64,24 @@ angular.module('yaru22.hovercard', [ } } // if (placement) - - if ($attrs.onclick) { - $element.on('click', function() { - $scope.showCard = true; - $scope.onHoverIn(); - }); - } else { - $element.on('mouseenter', function() { - $scope.showCard = true; - $scope.onHoverIn(); - }); + var delay = $attrs.delay || 0; + var triggerEvent = 'mouseenter'; + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } + $element.on(triggerEvent, function() { + setTimeout(function() { + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } + },delay); + }); $element.on('mouseleave', function() { $scope.showCard = false; - $scope.onHoverOut(); + if ($scope.onHoverOut) { + $scope.onHoverOut(); + } }); } // link function From 90f708f1f3762f733d4dac703cae3e6b2b50f8ed Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:16:27 -0700 Subject: [PATCH 05/15] new build --- demo/angular-hovercard.js | 26 +++++++++++++++----------- dist/angular-hovercard.js | 26 +++++++++++++++----------- dist/angular-hovercard.min.js | 2 +- 3 files changed, 31 insertions(+), 23 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 6830dec..f289dff 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -60,20 +60,24 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - if ($attrs.onclick) { - $element.on('click', function () { - $scope.showCard = true; - $scope.onHoverIn(); - }); - } else { - $element.on('mouseenter', function () { - $scope.showCard = true; - $scope.onHoverIn(); - }); + var delay = $attrs.delay || 0; + var triggerEvent = 'mouseenter'; + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } + $element.on(triggerEvent, function () { + setTimeout(function () { + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } + }, delay); + }); $element.on('mouseleave', function () { $scope.showCard = false; - $scope.onHoverOut(); + if ($scope.onHoverOut) { + $scope.onHoverOut(); + } }); } // link function }; diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 6830dec..f289dff 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -60,20 +60,24 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - if ($attrs.onclick) { - $element.on('click', function () { - $scope.showCard = true; - $scope.onHoverIn(); - }); - } else { - $element.on('mouseenter', function () { - $scope.showCard = true; - $scope.onHoverIn(); - }); + var delay = $attrs.delay || 0; + var triggerEvent = 'mouseenter'; + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } + $element.on(triggerEvent, function () { + setTimeout(function () { + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } + }, delay); + }); $element.on('mouseleave', function () { $scope.showCard = false; - $scope.onHoverOut(); + if ($scope.onHoverOut) { + $scope.onHoverOut(); + } }); } // link function }; diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 123a00d..63db7c9 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}c.onclick?b.on("click",function(){a.showCard=!0,a.onHoverIn()}):b.on("mouseenter",function(){a.showCard=!0,a.onHoverIn()}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g=c.delay||0,h="mouseenter";c.trigger&&(h=c.trigger),b.on(h,function(){setTimeout(function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()},g)}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut&&a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file From c133fa8baa30b935ec1f060813affa64e4d9a2ae Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:23:03 -0700 Subject: [PATCH 06/15] got rid of delay, bad idea :( --- src/angular-hovercard.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index b14246d..f069ea2 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -64,18 +64,15 @@ angular.module('yaru22.hovercard', [ } } // if (placement) - var delay = $attrs.delay || 0; var triggerEvent = 'mouseenter'; if ($attrs.trigger) { triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } $element.on(triggerEvent, function() { - setTimeout(function() { - $scope.showCard = true; - if ($scope.onHoverIn) { - $scope.onHoverIn(); - } - },delay); + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } }); $element.on('mouseleave', function() { $scope.showCard = false; From be63e55a5aff22e7a143170491d9c791777a6ac3 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:29:56 -0700 Subject: [PATCH 07/15] trying to scope triggerEvent --- src/angular-hovercard.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index f069ea2..31c4fa6 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -64,11 +64,11 @@ angular.module('yaru22.hovercard', [ } } // if (placement) - var triggerEvent = 'mouseenter'; + $scope.triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on(triggerEvent, function() { + $element.on($scope.triggerEvent, function() { $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); From e9e6ddd5c0627077485f9223dd61f2087deb3348 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:30:42 -0700 Subject: [PATCH 08/15] new build --- demo/angular-hovercard.js | 17 +++++++---------- dist/angular-hovercard.js | 17 +++++++---------- dist/angular-hovercard.min.js | 2 +- 3 files changed, 15 insertions(+), 21 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index f289dff..67e12cd 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -60,18 +60,15 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - var delay = $attrs.delay || 0; - var triggerEvent = 'mouseenter'; + $scope.triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on(triggerEvent, function () { - setTimeout(function () { - $scope.showCard = true; - if ($scope.onHoverIn) { - $scope.onHoverIn(); - } - }, delay); + $element.on($scope.triggerEvent, function () { + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } }); $element.on('mouseleave', function () { $scope.showCard = false; diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index f289dff..67e12cd 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -60,18 +60,15 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - var delay = $attrs.delay || 0; - var triggerEvent = 'mouseenter'; + $scope.triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on(triggerEvent, function () { - setTimeout(function () { - $scope.showCard = true; - if ($scope.onHoverIn) { - $scope.onHoverIn(); - } - }, delay); + $element.on($scope.triggerEvent, function () { + $scope.showCard = true; + if ($scope.onHoverIn) { + $scope.onHoverIn(); + } }); $element.on('mouseleave', function () { $scope.showCard = false; diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 63db7c9..df564fc 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g=c.delay||0,h="mouseenter";c.trigger&&(h=c.trigger),b.on(h,function(){setTimeout(function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()},g)}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut&&a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}a.triggerEvent="mouseenter",c.trigger&&(a.triggerEvent=c.trigger),b.on(a.triggerEvent,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut&&a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file From d39dd29d69f64c1edae62a7babc404a37dd96437 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:37:31 -0700 Subject: [PATCH 09/15] moved onmouseout back to html --- demo/angular-hovercard.js | 8 +------- dist/angular-hovercard.js | 8 +------- dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 6 ------ template/angular-hovercard.tmpl | 4 ++-- 5 files changed, 5 insertions(+), 23 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 67e12cd..c25fea6 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -70,12 +70,6 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc $scope.onHoverIn(); } }); - $element.on('mouseleave', function () { - $scope.showCard = false; - if ($scope.onHoverOut) { - $scope.onHoverOut(); - } - }); } // link function }; }); @@ -83,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 67e12cd..c25fea6 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -70,12 +70,6 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc $scope.onHoverIn(); } }); - $element.on('mouseleave', function () { - $scope.showCard = false; - if ($scope.onHoverOut) { - $scope.onHoverOut(); - } - }); } // link function }; }); @@ -83,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index df564fc..1e4e904 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}a.triggerEvent="mouseenter",c.trigger&&(a.triggerEvent=c.trigger),b.on(a.triggerEvent,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()}),b.on("mouseleave",function(){a.showCard=!1,a.onHoverOut&&a.onHoverOut()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl","
")}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}a.triggerEvent="mouseenter",c.trigger&&(a.triggerEvent=c.trigger),b.on(a.triggerEvent,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 31c4fa6..3942f5e 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -74,12 +74,6 @@ angular.module('yaru22.hovercard', [ $scope.onHoverIn(); } }); - $element.on('mouseleave', function() { - $scope.showCard = false; - if ($scope.onHoverOut) { - $scope.onHoverOut(); - } - }); } // link function }; diff --git a/template/angular-hovercard.tmpl b/template/angular-hovercard.tmpl index ec724ad..3db26a6 100644 --- a/template/angular-hovercard.tmpl +++ b/template/angular-hovercard.tmpl @@ -1,4 +1,4 @@ -
+
-
+
\ No newline at end of file From eeba9a6a60ed2836a9a9a870bf3a7a9c58fd5ae1 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 14:44:00 -0700 Subject: [PATCH 10/15] debugging --- demo/angular-hovercard.js | 7 ++++--- dist/angular-hovercard.js | 7 ++++--- dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 7 ++++--- 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index c25fea6..840e4ec 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -60,11 +60,12 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - $scope.triggerEvent = 'mouseenter'; + var triggerEvent = 'mouseover'; if ($attrs.trigger) { - $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on($scope.triggerEvent, function () { + console.log(triggerEvent); + $element.on(triggerEvent, function () { $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index c25fea6..840e4ec 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -60,11 +60,12 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - $scope.triggerEvent = 'mouseenter'; + var triggerEvent = 'mouseover'; if ($attrs.trigger) { - $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on($scope.triggerEvent, function () { + console.log(triggerEvent); + $element.on(triggerEvent, function () { $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 1e4e904..488a71b 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}a.triggerEvent="mouseenter",c.trigger&&(a.triggerEvent=c.trigger),b.on(a.triggerEvent,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),console.log(g),b.on(g,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 3942f5e..49fb2a3 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -64,11 +64,12 @@ angular.module('yaru22.hovercard', [ } } // if (placement) - $scope.triggerEvent = 'mouseenter'; + var triggerEvent = 'mouseover'; if ($attrs.trigger) { - $scope.triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc } - $element.on($scope.triggerEvent, function() { + console.log(triggerEvent); + $element.on(triggerEvent, function() { $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); From 8f5bdb5e1c1d43a33dd137b9655fe29b3a686cd7 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 15:03:29 -0700 Subject: [PATCH 11/15] testing events --- demo/angular-hovercard.js | 8 ++++---- dist/angular-hovercard.js | 8 ++++---- dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 8 ++++---- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 840e4ec..a6079c8 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -61,10 +61,10 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } // if (placement) var triggerEvent = 'mouseover'; - if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - } - console.log(triggerEvent); + // if ($attrs.trigger) { + // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + // } + // console.log(triggerEvent); $element.on(triggerEvent, function () { $scope.showCard = true; if ($scope.onHoverIn) { diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 840e4ec..a6079c8 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -61,10 +61,10 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } // if (placement) var triggerEvent = 'mouseover'; - if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - } - console.log(triggerEvent); + // if ($attrs.trigger) { + // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + // } + // console.log(triggerEvent); $element.on(triggerEvent, function () { $scope.showCard = true; if ($scope.onHoverIn) { diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 488a71b..0a2e131 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),console.log(g),b.on(g,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";b.on(g,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 49fb2a3..d9fff90 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -65,10 +65,10 @@ angular.module('yaru22.hovercard', [ } // if (placement) var triggerEvent = 'mouseover'; - if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - } - console.log(triggerEvent); + // if ($attrs.trigger) { + // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + // } + // console.log(triggerEvent); $element.on(triggerEvent, function() { $scope.showCard = true; if ($scope.onHoverIn) { From 7813330d609690bfffef915ff82d195ecd99f798 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 15:09:48 -0700 Subject: [PATCH 12/15] use show object --- demo/angular-hovercard.js | 11 +++++------ dist/angular-hovercard.js | 11 +++++------ dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 9 ++++----- template/angular-hovercard.tmpl | 6 +++--- 5 files changed, 18 insertions(+), 21 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index a6079c8..97ea523 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -61,12 +61,11 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } // if (placement) var triggerEvent = 'mouseover'; - // if ($attrs.trigger) { - // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - // } - // console.log(triggerEvent); + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + } $element.on(triggerEvent, function () { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } @@ -78,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index a6079c8..97ea523 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -61,12 +61,11 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } // if (placement) var triggerEvent = 'mouseover'; - // if ($attrs.trigger) { - // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - // } - // console.log(triggerEvent); + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + } $element.on(triggerEvent, function () { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } @@ -78,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 0a2e131..c65b56b 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";b.on(g,function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),b.on(g,function(){a.show.card=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index d9fff90..e8b878b 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -65,12 +65,11 @@ angular.module('yaru22.hovercard', [ } // if (placement) var triggerEvent = 'mouseover'; - // if ($attrs.trigger) { - // triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - // } - // console.log(triggerEvent); + if ($attrs.trigger) { + triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + } $element.on(triggerEvent, function() { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } diff --git a/template/angular-hovercard.tmpl b/template/angular-hovercard.tmpl index 3db26a6..ea512a8 100644 --- a/template/angular-hovercard.tmpl +++ b/template/angular-hovercard.tmpl @@ -1,4 +1,4 @@ -
- -
+
+ +
\ No newline at end of file From 1955542046969641a423935482818a2a143a2d5e Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 15:11:06 -0700 Subject: [PATCH 13/15] case issue --- demo/angular-hovercard.js | 2 +- dist/angular-hovercard.js | 2 +- dist/angular-hovercard.min.js | 2 +- template/angular-hovercard.tmpl | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 97ea523..3bb2077 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -77,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 97ea523..3bb2077 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -77,6 +77,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index c65b56b..7e5ce3f 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),b.on(g,function(){a.show.card=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),b.on(g,function(){a.show.card=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/template/angular-hovercard.tmpl b/template/angular-hovercard.tmpl index ea512a8..b8602b2 100644 --- a/template/angular-hovercard.tmpl +++ b/template/angular-hovercard.tmpl @@ -1,4 +1,4 @@ -
+
\ No newline at end of file From 115bc2195db57dba7f007ce45646a9d700ec4cf2 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 15:17:19 -0700 Subject: [PATCH 14/15] another round --- demo/angular-hovercard.js | 22 ++++++++++++++++------ dist/angular-hovercard.js | 22 ++++++++++++++++------ dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 25 +++++++++++++++++++------ template/angular-hovercard.tmpl | 2 +- 5 files changed, 53 insertions(+), 20 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 3bb2077..35b86c1 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -60,16 +60,26 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - var triggerEvent = 'mouseover'; + var triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + triggerEvent = $attrs.trigger; } - $element.on(triggerEvent, function () { - $scope.show.card = true; + var show = function () { + $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } - }); + }; + $scope.showMouse = function () { + if (triggerEvent === 'mouseenter') { + show(); + } + }; + $scope.showClick = function () { + if (triggerEvent === 'click') { + show(); + } + }; } // link function }; }); @@ -77,6 +87,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 3bb2077..35b86c1 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -60,16 +60,26 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc } } // if (placement) - var triggerEvent = 'mouseover'; + var triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc + triggerEvent = $attrs.trigger; } - $element.on(triggerEvent, function () { - $scope.show.card = true; + var show = function () { + $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } - }); + }; + $scope.showMouse = function () { + if (triggerEvent === 'mouseenter') { + show(); + } + }; + $scope.showClick = function () { + if (triggerEvent === 'click') { + show(); + } + }; } // link function }; }); @@ -77,6 +87,6 @@ angular.module('yaru22.hovercard.tmpls', []).run([ '$templateCache', function ($templateCache) { 'use strict'; - $templateCache.put('template/angular-hovercard.tmpl', '
'); + $templateCache.put('template/angular-hovercard.tmpl', '
'); } ]); \ No newline at end of file diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 7e5ce3f..42b2f5a 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseover";c.trigger&&(g=c.trigger),b.on(g,function(){a.show.card=!0,a.onHoverIn&&a.onHoverIn()})}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseenter";c.trigger&&(g=c.trigger);var h=function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()};a.showMouse=function(){"mouseenter"===g&&h()},a.showClick=function(){"click"===g&&h()}}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index e8b878b..161877e 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -64,16 +64,29 @@ angular.module('yaru22.hovercard', [ } } // if (placement) - var triggerEvent = 'mouseover'; + var triggerEvent = 'mouseenter'; if ($attrs.trigger) { - triggerEvent = $attrs.trigger; // click, hover, dblclick, etc - } - $element.on(triggerEvent, function() { - $scope.show.card = true; + triggerEvent = $attrs.trigger; + } + + var show = function() { + $scope.showCard = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } - }); + }; + + $scope.showMouse = function () { + if (triggerEvent === 'mouseenter') { + show(); + } + }; + + $scope.showClick = function () { + if (triggerEvent === 'click') { + show(); + } + }; } // link function }; diff --git a/template/angular-hovercard.tmpl b/template/angular-hovercard.tmpl index b8602b2..819dca1 100644 --- a/template/angular-hovercard.tmpl +++ b/template/angular-hovercard.tmpl @@ -1,4 +1,4 @@ -
+
\ No newline at end of file From c1e632600303ecb830ddb04dd43240bafa30a418 Mon Sep 17 00:00:00 2001 From: Justin Shreve Date: Tue, 20 Oct 2015 15:18:38 -0700 Subject: [PATCH 15/15] variable fix --- demo/angular-hovercard.js | 2 +- dist/angular-hovercard.js | 2 +- dist/angular-hovercard.min.js | 2 +- src/angular-hovercard.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/demo/angular-hovercard.js b/demo/angular-hovercard.js index 35b86c1..b961af2 100644 --- a/demo/angular-hovercard.js +++ b/demo/angular-hovercard.js @@ -65,7 +65,7 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc triggerEvent = $attrs.trigger; } var show = function () { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } diff --git a/dist/angular-hovercard.js b/dist/angular-hovercard.js index 35b86c1..b961af2 100644 --- a/dist/angular-hovercard.js +++ b/dist/angular-hovercard.js @@ -65,7 +65,7 @@ angular.module('yaru22.hovercard', ['yaru22.hovercard.tmpls']).directive('hoverc triggerEvent = $attrs.trigger; } var show = function () { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); } diff --git a/dist/angular-hovercard.min.js b/dist/angular-hovercard.min.js index 42b2f5a..4d88ba3 100644 --- a/dist/angular-hovercard.min.js +++ b/dist/angular-hovercard.min.js @@ -5,4 +5,4 @@ * @author Brian Park * @license MIT License, http://www.opensource.org/licenses/MIT */ -"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseenter";c.trigger&&(g=c.trigger);var h=function(){a.showCard=!0,a.onHoverIn&&a.onHoverIn()};a.showMouse=function(){"mouseenter"===g&&h()},a.showClick=function(){"click"===g&&h()}}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file +"use strict";angular.module("yaru22.hovercard",["yaru22.hovercard.tmpls"]).directive("hovercard",function(){return{restrict:"E",transclude:!0,templateUrl:"template/angular-hovercard.tmpl",scope:!0,link:function(a,b,c){a.show={},a.show.card=!1,a.hoverTmplUrl=c.hoverTmplUrl,a.onHoverIn=a.$eval(c.onHoverIn),a.onHoverOut=a.$eval(c.onHoverOut);var d=c.placement||"bottomRight";if(a.hoverLabelStyle={},c.labelColor&&(a.hoverLabelStyle.color=c.labelColor),a.hoverCardStyle={},c.background&&(a.hoverCardStyle.background=c.background),c.width&&(a.hoverCardStyle.width=c.width),d){var e=d.replace(/([A-Z])/g," $1").toLowerCase().split(" "),f={};f[e[0]]=!0,f[e[1]]=!0,f.bottom&&(a.hoverCardStyle.bottom="",a.hoverCardStyle.top="-1em",a.hoverCardStyle["padding-bottom"]="",a.hoverCardStyle["padding-top"]="3em"),f.top&&(a.hoverCardStyle.bottom="-1em",a.hoverCardStyle.top="",a.hoverCardStyle["padding-bottom"]="3em",a.hoverCardStyle["padding-top"]=""),f.left&&(a.hoverCardStyle.left="",a.hoverCardStyle.right="-1em"),f.right&&(a.hoverCardStyle.left="-1em",a.hoverCardStyle.right="")}var g="mouseenter";c.trigger&&(g=c.trigger);var h=function(){a.show.card=!0,a.onHoverIn&&a.onHoverIn()};a.showMouse=function(){"mouseenter"===g&&h()},a.showClick=function(){"click"===g&&h()}}}}),angular.module("yaru22.hovercard.tmpls",[]).run(["$templateCache",function(a){a.put("template/angular-hovercard.tmpl",'
')}]); \ No newline at end of file diff --git a/src/angular-hovercard.js b/src/angular-hovercard.js index 161877e..b771e5c 100644 --- a/src/angular-hovercard.js +++ b/src/angular-hovercard.js @@ -70,7 +70,7 @@ angular.module('yaru22.hovercard', [ } var show = function() { - $scope.showCard = true; + $scope.show.card = true; if ($scope.onHoverIn) { $scope.onHoverIn(); }