mirror of
https://github.com/twbs/bootstrap.git
synced 2024-12-04 16:24:22 +01:00
Backport search from v4 and adapt it for v3.4.0.
This commit is contained in:
parent
ebe7459665
commit
d24d47c27a
@ -29,6 +29,10 @@
|
||||
<script src="{{ site.baseurl }}/dist/js/bootstrap.js"></script>
|
||||
{% endif %}
|
||||
|
||||
{% if page.layout == "default" %}
|
||||
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
|
||||
{% endif %}
|
||||
|
||||
{% if site.github %}
|
||||
<script src="{{ site.baseurl }}/assets/js/docs.min.js"></script>
|
||||
{% else %}
|
||||
@ -37,24 +41,6 @@
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% if page.slug == "getting-started" or page.slug == "css" or page.slug == "components" or page.slug == "js" %}
|
||||
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
|
||||
<script>
|
||||
var docsearch = docsearch({
|
||||
apiKey: 'c6aa63796ef2f94c7e7e7f0b93b4a223',
|
||||
indexName: 'bootstrap-v3',
|
||||
inputSelector: '#search-input',
|
||||
transformData: function (hits) {
|
||||
return hits.map(function (hit) {
|
||||
hit.url = hit.url.replace('https://getbootstrap.com/', '');
|
||||
return hit;
|
||||
});
|
||||
},
|
||||
debug: false // Set debug to true if you want to inspect the dropdown
|
||||
});
|
||||
</script>
|
||||
{% endif %}
|
||||
|
||||
{% if page.slug == "customize" %}
|
||||
<script>var __configBridge = {{ site.data.configBridge.config | jsonify }}</script>
|
||||
{% if site.github %}
|
||||
|
@ -28,7 +28,7 @@
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if page.slug == "getting-started" or page.slug == "css" or page.slug == "components" or page.slug == "js" %}
|
||||
{% if page.layout == "default" %}
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css">
|
||||
{% endif %}
|
||||
|
||||
|
51
docs/assets/js/src/search.js
Normal file
51
docs/assets/js/src/search.js
Normal file
@ -0,0 +1,51 @@
|
||||
// NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT
|
||||
// IT'S ALL JUST JUNK FOR OUR DOCS!
|
||||
// ++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
(function () {
|
||||
'use strict'
|
||||
|
||||
var inputElement = document.getElementById('search-input')
|
||||
|
||||
if (!window.docsearch || !inputElement) {
|
||||
return
|
||||
}
|
||||
|
||||
function getOrigin() {
|
||||
var location = window.location
|
||||
var origin = location.origin
|
||||
|
||||
if (!origin) {
|
||||
var port = location.port ? ':' + location.port : ''
|
||||
|
||||
origin = location.protocol + '//' + location.hostname + port
|
||||
}
|
||||
|
||||
return origin
|
||||
}
|
||||
|
||||
window.docsearch({
|
||||
apiKey: 'c8948afa20e6437a6e829f7e87b9ac11',
|
||||
indexName: 'bootstrap-v3',
|
||||
inputSelector: '#search-input',
|
||||
handleSelected: function (input, event, suggestion) {
|
||||
var url = suggestion.url
|
||||
url = suggestion.isLvl1 ? url.split('#')[0] : url
|
||||
// If it's a title we remove the anchor so it does not jump.
|
||||
window.location.href = url
|
||||
},
|
||||
transformData: function (hits) {
|
||||
return hits.map(function (hit) {
|
||||
var siteurl = getOrigin()
|
||||
var urlRE = /^https?:\/\/getbootstrap\.com/
|
||||
|
||||
// When in production, return the result as is,
|
||||
// otherwise remove our url from it.
|
||||
hit.url = siteurl.match(urlRE) ? hit.url : hit.url.replace(urlRE, '')
|
||||
|
||||
return hit
|
||||
})
|
||||
},
|
||||
debug: false // Set debug to true if you want to inspect the dropdown
|
||||
})
|
||||
}())
|
@ -14,7 +14,8 @@
|
||||
"/docs/3.4/assets/js/vendor/holder.min.js",
|
||||
"/docs/3.4/assets/js/vendor/clipboard.min.js",
|
||||
"/docs/3.4/assets/js/vendor/anchor.min.js",
|
||||
"/docs/3.4/assets/js/src/application.js"
|
||||
"/docs/3.4/assets/js/src/application.js",
|
||||
"/docs/3.4/assets/js/src/search.js"
|
||||
]
|
||||
},
|
||||
"config": {
|
||||
|
Loading…
Reference in New Issue
Block a user