diff options
| author | fat <[email protected]> | 2013-02-07 22:13:13 -0800 |
|---|---|---|
| committer | fat <[email protected]> | 2013-02-07 22:13:13 -0800 |
| commit | 8c7f9c66a7d12f47f50618ef420868fe836d0c33 (patch) | |
| tree | 552f251d1637a1749c34fcdbb3390653d2fdb8ae /docs/assets/js/bootstrap-typeahead.js | |
| parent | ee91afba63bc6e9687397b9052858fca242c2ff5 (diff) | |
| parent | c4d47fb1ea45ed2fc3cf382d087ed87b87c69288 (diff) | |
| download | bootstrap-2.3.0.tar.xz bootstrap-2.3.0.zip | |
Merge branch '2.3.0-wip'v2.3.0
Diffstat (limited to 'docs/assets/js/bootstrap-typeahead.js')
| -rw-r--r-- | docs/assets/js/bootstrap-typeahead.js | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/docs/assets/js/bootstrap-typeahead.js b/docs/assets/js/bootstrap-typeahead.js index 088e7ce9b..960f2af85 100644 --- a/docs/assets/js/bootstrap-typeahead.js +++ b/docs/assets/js/bootstrap-typeahead.js @@ -1,5 +1,5 @@ /* ============================================================= - * bootstrap-typeahead.js v2.2.2 + * bootstrap-typeahead.js v2.3.0 * http://twitter.github.com/bootstrap/javascript.html#typeahead * ============================================================= * Copyright 2012 Twitter, Inc. @@ -172,6 +172,7 @@ , listen: function () { this.$element + .on('focus', $.proxy(this.focus, this)) .on('blur', $.proxy(this.blur, this)) .on('keypress', $.proxy(this.keypress, this)) .on('keyup', $.proxy(this.keyup, this)) @@ -183,6 +184,7 @@ this.$menu .on('click', $.proxy(this.click, this)) .on('mouseenter', 'li', $.proxy(this.mouseenter, this)) + .on('mouseleave', 'li', $.proxy(this.mouseleave, this)) } , eventSupported: function(eventName) { @@ -256,22 +258,33 @@ e.preventDefault() } + , focus: function (e) { + this.focused = true + } + , blur: function (e) { - var that = this - setTimeout(function () { that.hide() }, 150) + this.focused = false + if (!this.mousedover && this.shown) this.hide() } , click: function (e) { e.stopPropagation() e.preventDefault() this.select() + this.$element.focus() } , mouseenter: function (e) { + this.mousedover = true this.$menu.find('.active').removeClass('active') $(e.currentTarget).addClass('active') } + , mouseleave: function (e) { + this.mousedover = false + if (!this.focused && this.shown) this.hide() + } + } @@ -316,7 +329,6 @@ $(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) { var $this = $(this) if ($this.data('typeahead')) return - e.preventDefault() $this.typeahead($this.data()) }) |
