Dies handelt
/* *id: id The parent element of the current plug-in *data: json Selected data (json format) *bool: true/false Data If you want to separate the data into two values true *config: Configure the internal object of data (type takes effect when bool is true) { id: data field, name: data name, alias: data name first letter, type: data type} *fn: function fn(){} Callback function, click the function executed when generating das Tag*/ function ySelect (id, ydata, bool, config, fn) {var data = []; YSelect_close = {}; var name_list = {A: [], b: [], c: [], d: [], e: [], f: [], g: [], h: [], i: [], j: [], k: [], l: [], m: [], n: [] , O: [], p: [], q: [], r: [], s: [], t: [], u: [], v: [], w: [], x: [], y: [], z: [] andere: []} // Erstellen Sie ein neues Array, um undefinierte var ydropdowns = document.getElementById (ID) zu verhindern; Funktion Vorbehandlung () {// Prozessdaten var catalogData = []; var BrandData = []; var China = []; var fremd = []; für (var i in ydata) {if (ydata [i] [config.type] == null) catalogData.push (ydata [i] [config.id]+';'+ydata [i] [config.name]+'; BrandData.push (ydata [i] [config.id]+';'+ydata [i] [config.name]+';'+ydata [i] [config.type])}; if (BrandData! sonst fremd.push (str [0] + ';' + st [1] + ';' + st [2]); } if (bool) {data = China; Daten zurückgeben; } else {data = fremd; Daten zurückgeben; }} else {data = catalogData; Daten zurückgeben; // Daten zurückgeben}}; Funktion jSondata (Data_Name, IDA) {// Verarbeiten Sie die Daten, die von Vorbehandlungsvar title = [] zurückgegeben wurden; // Definieren Sie den Anfangsbuchstaben var ahtml = {A: [], b: [], c: [], d: [], e: [], f: [], g: [], h: [], i: [], j: [], k: [], l: [], m: [], n: [] , O: [], p: [], q: [], r: [], s: [], t: [], u: [], v: [], w: [], x: [], y: [], z: [], andere: []}; // Erstellen Sie ein neues Array, um undefined var yselect_box = document.createelement ("div") zu verhindern; // Erstellen Sie ein neues Auswahlfeld übergeordnetes Element yselect_box.id = ida+"_ yselect_box"; var yselect_div = document.createelement ("div"); // Container mit Buchstaben Rückgabewert var yselect_letter = document.createelement ("p"); // 26 Buchstabe Container yselect_letter.id = ida+'_ yselect_letter' var stylelink = document.createelement ("style") // Haut erstellen, mit zwei Skins -Sätzen aus //stylelink.innerhtml = '#'+id+'_ Yelect_box {widthTh: 100%. Yahei; Cursor: Zeiger; Position: absolut; oben: 0; rechts: 0; Farbe:#f00}#'+id+' _ yselect_box .hide_tag {Border: 1PX Solid#469bde; Padding: 5px; Anzeige: Keine; min-hohe: 100px; max-Höhe: 300px; min-Width: 300px; Max-Width: 800px; Überlauf: auto}#'+id+' _ yselect_box pa {padding: 5px; line-height: 28px; color: #FFF#'+id+' _ yselect_box. a {width: 80px; Anzeige: Block; Textdekoration: Keine; Padding: 5px; Zeilenhöhe: 12px; Schriftgröße: 12px; float: links; Farbe:#444; Überlauf: versteckt; text-overflow: ellipsis; weißer space: nowrap;}#'+id+' _ yselect_box .hide_tag a: hover {Hintergrund:#469bde; color: #fff;}#'+id+' _ yselect_box. stylelink.innnerHtml = '#'+ida+'_ yselect_box {width: 100%; min-Width: 500px; Max-Width: 800px; Position: Absolute; obere: 30px; links: 0; Z-Index: 9999; Hintergrund: #FFF; BORE: 1PX: 1px feste #DD; p {padding: 0 10px;}#'+ida+' _ yselect_box p span.close {font: 16px/20px microsoft yahei; Keine; min-hohe: 50px; max-hohe: 200px; Überlauf: auto}#'+ida+' _ yselect_box pa {padding: 5px; leitungshöhe: 28px; color:#333; Border-Bottom: 2px Solid #bbb; Font-Weight: Bold}#'+ida+' _ yselect_box. a {width: 80px; Anzeige: Block; Textdekoration: Keine; Padding: 5px; Zeilenhöhe: 12px; Schriftgröße: 12px; float: links; Farbe:#444; Überlauf: versteckt; Text-Overflow: ellipsis; Weißraum: nowrap;}#'+ida+' _ yselect_box .hide_tag a: hover {Hintergrund:#469bde; color: #fff;}#'+ida+' _ Yelect_box a.cur {Border-Bottom: 2px#469bde; für (var i = 0; i <data_name.length; i ++) {var str = data_name [i] .Split (';') title.push (str [2] .charat (0) .tolocaluppercase ()) // den Anfangsbuchstaben beurteilen und dem Titel} zuweisen}; für (var j in title) {if (name_list [tit [j]]) name_list [tit [j]]. push (data_name [j]); sonst name_list.other.push (data_name [j])} // Daten in name_list einfügen (var k in name_list) {// Daten, getrennt durch Buchstaben, ausblenden if (name_list [k] .Length! = 0) {für (var i = 0; i <name_list [k] .Length; onclick = "' + fn +' (this)" name = "' + name_list [k] [i] .Split ('; ') [0] +'"> ' + name_list [k] [i] .split (';) [1] + '</a>'; Ahtml [k] += allhtml; }; Yselect_letter.innerhtml+= '<a href = "javaScript:">'+k+'</a>'; Yselect_div.innerHtml+= '<div>'+ahtml [k]+'</div>'; }; } var bool = true yselect_box.innerHtml = '<p id = "'+ida+'_ yselect_letter'+'">'+yselect_letter Ydropdowns.appendChild (ySelect_box); Ydropdowns.appendChild (Stylelink); // Wählen Sie in die Seite ySelect_box.getElementsByTagName ('p') [0] .GetElementsByTagName ('span') [0] .onclick = Funktion yselect_close () {ydropdowns.removeChild (yselect_box) ydropdowns.removechild (stylelink); bool = false} // klicken, um auszuwählen yselect_close.close = function bool = false return}; if (bool) {ydropdowns.removechild (yselect_box) ydropdowns.removechild (stylelink); }} // Zerstören Sie die Auswahl der Funktion return yselect_close} jSondata (Vorbehandlung (), id) navlist (id) function navlist (ids) {// Registerkarte "Registerkarte" Funktion var a = document.getElementById (ids+'_ yselect_letter'). var div = document.getElementById (ids+'_ yselect_box'). getElementsByTagName ('div'); Div [0] .Style.Display = "Block"; a [0] .ClassName = "cur"; für (var i = 0; i <A.Length; i ++) {a [i] .Index = i; a [i] .onclick = function () {for (var j = 0; j <a.Length; j ++) {div [j] .Style.display = "none"; a [j] .ClassName = ""; }; div [this.index] .style.display = "block"; this.className = "cur"}; }; }; }; };