@@ -968,11 +968,11 @@ window.initSearch = function(rawSearchIndex) {
968
968
extraClass = " active" ;
969
969
}
970
970
971
- var output = "" ;
971
+ var output = document . createElement ( "div" ) ;
972
972
var duplicates = { } ;
973
973
var length = 0 ;
974
974
if ( array . length > 0 ) {
975
- output = "<div class=\" search-results " + extraClass + "\">" ;
975
+ output . className = "search-results " + extraClass ;
976
976
977
977
array . forEach ( function ( item ) {
978
978
if ( item . is_alias !== true ) {
@@ -994,19 +994,46 @@ window.initSearch = function(rawSearchIndex) {
994
994
extra = " <i>(keyword)</i>" ;
995
995
}
996
996
997
- output += "<a class=\"result-" + type + "\" href=\"" + item . href + "\">" +
998
- "<div><div class=\"result-name\">" +
999
- ( item . is_alias === true ?
1000
- ( "<span class=\"alias\"><b>" + item . alias + " </b></span><span " +
1001
- "class=\"grey\"><i> - see </i></span>" ) : "" ) +
1002
- item . displayPath + "<span class=\"" + type + "\">" +
1003
- name + extra + "</span></div><div class=\"desc\">" +
1004
- "<span>" + item . desc +
1005
- " </span></div></div></a>" ;
997
+ var link = document . createElement ( "a" ) ;
998
+ link . className = "result-" + type ;
999
+ link . href = item . href ;
1000
+
1001
+ var wrapper = document . createElement ( "div" ) ;
1002
+ var resultName = document . createElement ( "div" ) ;
1003
+ resultName . className = "result-name" ;
1004
+
1005
+ if ( item . is_alias ) {
1006
+ var alias = document . createElement ( "span" ) ;
1007
+ alias . className = "alias" ;
1008
+
1009
+ var bold = document . createElement ( "b" ) ;
1010
+ bold . innerText = item . alias ;
1011
+ alias . appendChild ( bold ) ;
1012
+
1013
+ alias . insertAdjacentHTML (
1014
+ "beforeend" ,
1015
+ "<span class=\"grey\"><i> - see </i></span>" ) ;
1016
+
1017
+ resultName . appendChild ( alias ) ;
1018
+ }
1019
+ resultName . insertAdjacentHTML (
1020
+ "beforeend" ,
1021
+ item . displayPath + "<span class=\"" + type + "\">" + name + extra + "</span>" ) ;
1022
+ wrapper . appendChild ( resultName ) ;
1023
+
1024
+ var description = document . createElement ( "div" ) ;
1025
+ description . className = "desc" ;
1026
+ var spanDesc = document . createElement ( "span" ) ;
1027
+ spanDesc . innerText = item . desc + "\u00A0" ;
1028
+
1029
+ description . appendChild ( spanDesc ) ;
1030
+ wrapper . appendChild ( description ) ;
1031
+ link . appendChild ( wrapper ) ;
1032
+ output . appendChild ( link ) ;
1006
1033
} ) ;
1007
- output += "</div>" ;
1008
1034
} else {
1009
- output = "<div class=\"search-failed\"" + extraClass + ">No results :(<br/>" +
1035
+ output . className = "search-failed" + extraClass ;
1036
+ output . innerHTML = "No results :(<br/>" +
1010
1037
"Try on <a href=\"https://duckduckgo.com/?q=" +
1011
1038
encodeURIComponent ( "rust " + query . query ) +
1012
1039
"\">DuckDuckGo</a>?<br/><br/>" +
@@ -1018,7 +1045,7 @@ window.initSearch = function(rawSearchIndex) {
1018
1045
"href=\"https://doc.rust-lang.org/book/index.html\">Rust Book</a> for " +
1019
1046
"introductions to language features and the language itself.</li><li><a " +
1020
1047
"href=\"https://docs.rs\">Docs.rs</a> for documentation of crates released on" +
1021
- " <a href=\"https://crates.io/\">crates.io</a>.</li></ul></div> " ;
1048
+ " <a href=\"https://crates.io/\">crates.io</a>.</li></ul>" ;
1022
1049
}
1023
1050
return [ output , length ] ;
1024
1051
}
@@ -1078,10 +1105,16 @@ window.initSearch = function(rawSearchIndex) {
1078
1105
makeTabHeader ( 0 , "In Names" , ret_others [ 1 ] ) +
1079
1106
makeTabHeader ( 1 , "In Parameters" , ret_in_args [ 1 ] ) +
1080
1107
makeTabHeader ( 2 , "In Return Types" , ret_returned [ 1 ] ) +
1081
- "</div><div id=\"results\">" +
1082
- ret_others [ 0 ] + ret_in_args [ 0 ] + ret_returned [ 0 ] + "</div>" ;
1108
+ "</div>" ;
1109
+
1110
+ var resultsElem = document . createElement ( "div" ) ;
1111
+ resultsElem . id = "results" ;
1112
+ resultsElem . appendChild ( ret_others [ 0 ] ) ;
1113
+ resultsElem . appendChild ( ret_in_args [ 0 ] ) ;
1114
+ resultsElem . appendChild ( ret_returned [ 0 ] ) ;
1083
1115
1084
1116
search . innerHTML = output ;
1117
+ search . appendChild ( resultsElem ) ;
1085
1118
// Reset focused elements.
1086
1119
searchState . focusedByTab = [ null , null , null ] ;
1087
1120
searchState . showResults ( search ) ;
0 commit comments