Guest User

Untitled

a guest
Jul 16th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. this.menu = $("<ul></ul>")
  2. .addClass("ui-autocomplete")
  3. .css({ 'height': '100px', 'overflow': 'scroll', 'witdh': 'auto' })
  4. .appendTo($(this.options.appendTo || "body", doc)[0])
  5. .mousedown(function(event) {
  6. var menuElement = self.menu.element[0];
  7. if (!$(event.target).closest(".ui-menu-item").length) {
  8. setTimeout(function() {
  9. $(document).one('mousedown', function(event) {
  10. if (event.target !== self.element[0] &&
  11. event.target !== menuElement &&
  12. !$.ui.contains(menuElement, event.target)) {
  13. self.close();
  14. }
  15. });
  16. }, 1);
  17. }
  18. setTimeout(function() {
  19. clearTimeout(self.closing);
  20. }, 13);
  21. })
  22. .menu({
  23. focus: function(event, ui) {
  24. var item = ui.item.data("item.autocomplete");
  25. if (false !== self._trigger("focus", event, { item: item })) {
  26. if (/^key/.test(event.originalEvent.type)) {
  27. self.element.val(item.value);
  28. }
  29. }
  30. },
  31. selected: function(event, ui) {
  32. var item = ui.item.data("item.autocomplete"),
  33. previous = self.previous;
  34. if (self.element[0] !== doc.activeElement) {
  35. self.element.focus();
  36. self.previous = previous;
  37. setTimeout(function() {
  38. self.previous = previous;
  39. self.selectedItem = item;
  40. }, 1);
  41. }
  42. if (false !== self._trigger("select", event, { item: item })) {
  43. self.element.val(item.value);
  44. }
  45. self.term = self.element.val();
  46. self.close(event);
  47. self.selectedItem = item;
  48. },
  49. blur: function(event, ui) {
  50. if (self.menu.element.is(":visible") &&
  51. (self.element.val() !== self.term)) {
  52. self.element.val(self.term);
  53. }
  54. }
  55. })
  56. .zIndex(this.element.zIndex() + 1)
  57. .css({ top: 0, left: 0 })
  58. .hide()
  59. .data("menu");
Add Comment
Please, Sign In to add comment