修改静态资源文件夹位置
This commit is contained in:
89
public/sdk/docs/scripts/fulltext-search-ui.js
Normal file
89
public/sdk/docs/scripts/fulltext-search-ui.js
Normal file
@ -0,0 +1,89 @@
|
||||
window.SearcherDisplay = (function($) {
|
||||
/**
|
||||
* This class provides support for displaying quick search text results to users.
|
||||
*/
|
||||
function SearcherDisplay() { }
|
||||
|
||||
SearcherDisplay.prototype.init = function() {
|
||||
this._displayQuickSearch();
|
||||
};
|
||||
|
||||
/**
|
||||
* This method creates the quick text search entry in navigation menu and wires all required events.
|
||||
*/
|
||||
SearcherDisplay.prototype._displayQuickSearch = function() {
|
||||
var quickSearch = $(document.createElement("iframe")),
|
||||
body = $("body"),
|
||||
self = this;
|
||||
|
||||
quickSearch.attr("src", "quicksearch.html");
|
||||
quickSearch.css("width", "0px");
|
||||
quickSearch.css("height", "0px");
|
||||
|
||||
body.append(quickSearch);
|
||||
|
||||
$(window).on("message", function(msg) {
|
||||
var msgData = msg.originalEvent.data;
|
||||
|
||||
if (msgData.msgid != "docstrap.quicksearch.done") {
|
||||
return;
|
||||
}
|
||||
|
||||
var results = msgData.results || [];
|
||||
|
||||
self._displaySearchResults(results);
|
||||
});
|
||||
|
||||
function startSearch() {
|
||||
var searchTerms = $('#search-input').prop("value");
|
||||
if (searchTerms) {
|
||||
quickSearch[0].contentWindow.postMessage({
|
||||
"searchTerms": searchTerms,
|
||||
"msgid": "docstrap.quicksearch.start"
|
||||
}, "*");
|
||||
}
|
||||
}
|
||||
|
||||
$('#search-input').on('keyup', function(evt) {
|
||||
if (evt.keyCode != 13) {
|
||||
return;
|
||||
}
|
||||
startSearch();
|
||||
return false;
|
||||
});
|
||||
$('#search-submit').on('click', function() {
|
||||
startSearch();
|
||||
return false;
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* This method displays the quick text search results in a modal dialog.
|
||||
*/
|
||||
SearcherDisplay.prototype._displaySearchResults = function(results) {
|
||||
var resultsHolder = $($("#searchResults").find(".modal-body")),
|
||||
fragment = document.createDocumentFragment(),
|
||||
resultsList = document.createElement("ul");
|
||||
|
||||
resultsHolder.empty();
|
||||
|
||||
for (var idx = 0; idx < results.length; idx++) {
|
||||
var result = results[idx],
|
||||
item = document.createElement("li"),
|
||||
link = document.createElement("a");
|
||||
|
||||
link.href = result.id;
|
||||
link.innerHTML = result.title;
|
||||
|
||||
item.appendChild(link)
|
||||
resultsList.appendChild(item);
|
||||
}
|
||||
|
||||
fragment.appendChild(resultsList);
|
||||
resultsHolder.append(fragment);
|
||||
|
||||
$("#searchResults").modal({"show": true});
|
||||
};
|
||||
|
||||
return new SearcherDisplay();
|
||||
})($);
|
Reference in New Issue
Block a user