define([
"jquery",
"jQueryUI",
- "plugins/utils",
+ "utils",
"quicksearchList",
], function($, ui, utils) {
$.widget("nitdoc.quicksearch", {
options: {
list: {}, // List of raw results generated by nitdoc tool
- fieldNotUsedClass: "nitdoc-qs-field-notused",
fieldAttrs: {
autocomplete: "off",
- value: "quick search..."
},
tableID: "nitdoc-qs-table",
tableCSS: {
_create: function() {
this.element
.attr(this.options.fieldAttrs)
- .addClass(this.options.fieldNotUsedClass)
.keydown($.proxy(this._doKeyDown, this))
.keyup($.proxy(this._doKeyUp, this))
- .focusout($.proxy(this._doFocusOut, this))
- .focusin($.proxy(this._doFocusIn, this));
this._table = $("<table/>")
.attr("id", this.options.tableID)
break;
case 13: // Enter
this._loadResult();
- break;
+ return false;
case 27: // Escape
this.element.blur();
this.closeTable();
- break;
+ return true;
default: // Other keys
utils.delayEvent($.proxy(this.search, this));
- break;
- }
- },
-
- _doFocusOut: function() {
- if(this.element.val() == "") {
- this.element.addClass(this.options.fieldNotUsedClass);
- this.element.val(this.options.fieldAttrs.value);
- }
- },
-
- _doFocusIn: function() {
- if(this.element.val() == this.options.fieldAttrs.value) {
- this.element.removeClass(this.options.fieldNotUsedClass);
- this.element.val("");
+ return true;
}
},
});
var searchField = $("<input/>")
- .addClass("nitdoc-qs-field-notused")
+ .addClass("form-control input-sm")
.attr({
id: "nitdoc-qs-field",
type: "text",
+ placeholder: "Search..."
})
- $("nav.main ul").append(
- $("<li/>")
- .attr("id", "nitdoc-qs-li")
- .append(searchField)
+ $("#topmenu>.container-fluid").append(
+ $("<div>")
+ .addClass("navbar-form navbar-right")
+ .append(
+ $("<div>")
+ .addClass("form-group")
+ .append(searchField)
+ )
);
searchField.quicksearch({