Heim Web-Frontend js-Tutorial 用javascript模仿ie的自动完成类似自动完成功的表单_javascript技巧

用javascript模仿ie的自动完成类似自动完成功的表单_javascript技巧

May 16, 2016 pm 05:46 PM
ie 自动完成

最近在写一个javascript框架,看见网上有不少自动完成功能的表单,所以一时兴起,用javascript写了一个,为自己的框架增点色.

步骤:
1.传入两个参数,第一个是你要绑定的表单对象,第二个是你要检索的数组.
2.动态建立一个div做为你要自动完成的层,设置属性和事件(我在这里并没有设置div的visible和display属性,而是将它的left设为"-1000px",这样就移出了浏览器之外,达到了隐藏的效果.
3.对传入的数组进行检索,找出与输入内容匹配或相近的项,并将其存入一个新的数组.这里用正则表达式进行了四次迭代,写的不好,还望见谅.
4.对存入检索后数据的那个新数组进行处理,去掉内容重复的项,并将其写进div内.
5.设置div的left,top,width即可.

下面看给出的完整代码:

复制代码 代码如下:

if(!sx)
var sx={};
sx.activex={};
sx.activex.autocomplete={
bind:function(a,s){
var d=document.createElement("div");
d.style.position="absolute";
d.flag="autocomplete";
document.body.appendChild(d);
d.style.left="-1000px";
d.style.height="100px";
d.style.overflow="auto";
a.onblur=function(){
if(document.elementFromPoint(window.event.clientX,window.event.clientY).flag=="autocomplete" || document.elementFromPoint(window.event.clientX,window.event.clientY).parentNode.flag=="autocomplete")
return;
d.innerHTML="";
d.style.left="-1000px";
}
a.onkeyup=function(){
if(a.value=="") {
d.innerHTML="";
return;
}
d.innerHTML="";
var t=[];
for(var i in s){
if(eval("/^"+a.value+"$/i").test(s[i])){
t.push(s[i]);
}
}
for(var i in s){
if(eval("/^"+a.value+".+$/i").test(s[i])){
t.push(s[i]);
}
}
for(var i in s){
if(eval("/^.+"+a.value+"$/i").test(s[i])){
t.push(s[i]);
}
}
for(var i in s){
if(eval("/^.+"+a.value+".+$/i").test(s[i])){
t.push(s[i]);
}
}
for(var e=0;efor(var e1=e+1;e1if(t[e]==t[e1]){
for(var e2=e1+1;e2if(t[e2]){
t[e2-1]=t[e2];
}
}
t.length=t.length-1;
}
}
}
//alert(t);
for(var i in t){
var p=document.createElement("div");
p.innerText=t[i];
p.onmouseenter=function(){
this.style.backgroundColor="blue";
}
p.onmouseleave=function(){
this.style.backgroundColor="white";
}
p.onclick=function(){
a.value=this.innerText;
d.style.left="-1000px";
}
d.appendChild(p)
}
d.style.top=a.offsetTop+a.offsetHeight+"px";
d.style.left=a.offsetLeft+"px";
d.style.width=a.offsetWidth+"px";
}
}
}.

调用的html代码:
复制代码 代码如下:



Untitled Document





<script> <BR>sx.activex.autocomplete.bind(document.getElementById("a"),["asd","a","sad","er","ewrew","aadasd","wqqwrqw","asasf","qweqw"]); <BR>sx.activex.autocomplete.bind(document.getElementById("a1"),["asd","a","sad","er","ewrew","aadasd","wqqwrqw","asasf","qweqw"]); <BR></script>



代码没有优化,还请多多包涵,这里给出一个思路,让各位见笑了.
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Internet Explorer öffnet Edge: So stoppen Sie die MS Edge-Umleitung Internet Explorer öffnet Edge: So stoppen Sie die MS Edge-Umleitung Apr 14, 2023 pm 06:13 PM

Es ist kein Geheimnis, dass der Internet Explorer schon lange in Ungnade gefallen ist, aber mit der Einführung von Windows 11 kommt die Realität. Anstatt in Zukunft manchmal den IE zu ersetzen, ist Edge jetzt der Standardbrowser im neuesten Betriebssystem von Microsoft. Vorerst können Sie den Internet Explorer noch in Windows 11 aktivieren. Allerdings hat IE11 (die neueste Version) bereits ein offizielles Ruhestandsdatum, nämlich den 15. Juni 2022, und die Uhr tickt. Vor diesem Hintergrund ist Ihnen vielleicht aufgefallen, dass Internet Explorer manchmal Edge öffnet, und es gefällt Ihnen möglicherweise nicht. Warum passiert das also? existieren

Was soll ich tun, wenn Win11 den IE11-Browser nicht verwenden kann? (win11 kann den IE-Browser nicht verwenden) Was soll ich tun, wenn Win11 den IE11-Browser nicht verwenden kann? (win11 kann den IE-Browser nicht verwenden) Feb 10, 2024 am 10:30 AM

Immer mehr Benutzer beginnen mit der Aktualisierung des Win11-Systems. Da jeder Benutzer unterschiedliche Nutzungsgewohnheiten hat, verwenden viele Benutzer immer noch den IE11-Browser. Was soll ich also tun, wenn das Win11-System den IE-Browser nicht verwenden kann? Unterstützt Windows11 immer noch ie11? Werfen wir einen Blick auf die Lösung. Lösung des Problems, dass Win11 den ie11-Browser nicht verwenden kann 1. Klicken Sie zunächst mit der rechten Maustaste auf das Startmenü und wählen Sie „Eingabeaufforderung (Administrator)“, um es zu öffnen. 2. Geben Sie nach dem Öffnen direkt „Netshwinsockreset“ ein und drücken Sie zur Bestätigung die Eingabetaste. 3. Geben Sie nach der Bestätigung „netshadvfirewallreset&rdqu“ ein

So implementieren Sie Autovervollständigung und Autofill über Vue und Element-Plus So implementieren Sie Autovervollständigung und Autofill über Vue und Element-Plus Jul 17, 2023 pm 06:45 PM

So implementieren Sie die automatische Vervollständigung und das automatische Ausfüllen über Vue und ElementPlus. Einführung: In der modernen Webentwicklung sind die automatische Vervollständigung und das automatische Ausfüllen von Formularen eine wichtige funktionale Anforderung. Es kann die Benutzererfahrung verbessern und die Langeweile und Fehler wiederholter Eingaben reduzieren. In diesem Artikel wird erläutert, wie Sie mit Vue und ElementPlus Funktionen zur automatischen Vervollständigung und zum automatischen Ausfüllen implementieren, und entsprechende Codebeispiele bereitstellen. 1. Was ist Autovervollständigung und Autovervollständigung? Wenn der Benutzer einen Text eingibt

Umgang mit Autofill und Autocomplete in PHP-Formularen Umgang mit Autofill und Autocomplete in PHP-Formularen Aug 11, 2023 pm 06:39 PM

Umgang mit Autofill und Autocomplete in PHP-Formularen Mit der Weiterentwicklung des Internets verlassen sich Menschen zunehmend auf Autofill- und Autocomplete-Funktionen, um ihre Vorgänge auf der Website zu vereinfachen. Die Implementierung dieser Funktionen in PHP-Formularen ist nicht kompliziert. In diesem Artikel wird kurz vorgestellt, wie Sie PHP zum automatischen Ausfüllen und Vervollständigen von Formularen verwenden. Bevor wir beginnen, müssen wir klären, was Autofill und Autocomplete sind. Unter Autofill versteht man das automatische Ausfüllen der Felder in einem Formular für Benutzer basierend auf ihren vorherigen Eingaben oder ihrem Verlauf. Zum Beispiel, wenn der Benutzer eine E-Mail eingibt

So brechen Sie den automatischen Sprung zu Edge ab, wenn Sie den IE in Win10_Solution öffnen, um zum automatischen Sprung der IE-Browserseite zu gelangen So brechen Sie den automatischen Sprung zu Edge ab, wenn Sie den IE in Win10_Solution öffnen, um zum automatischen Sprung der IE-Browserseite zu gelangen Mar 20, 2024 pm 09:21 PM

In letzter Zeit haben viele Win10-Benutzer festgestellt, dass ihr IE-Browser bei der Verwendung von Computerbrowsern immer automatisch zum Edge-Browser springt. Wie kann man also den automatischen Sprung zum Edge beim Öffnen des IE in Win10 deaktivieren? Lassen Sie diese Website den Benutzern sorgfältig vorstellen, wie sie beim Öffnen des IE in Win10 automatisch zum Rand springen und schließen. 1. Wir melden uns beim Edge-Browser an, klicken auf ... in der oberen rechten Ecke und suchen nach der Dropdown-Einstellungsoption. 2. Nachdem wir die Einstellungen eingegeben haben, klicken Sie in der linken Spalte auf Standardbrowser. 3. Abschließend aktivieren wir in der Kompatibilität das Kontrollkästchen, um ein erneutes Laden der Website im IE-Modus zu verhindern, und starten den IE-Browser neu.

Das Ende einer Ära: Internet Explorer 11 ist im Ruhestand, hier ist, was Sie wissen müssen Das Ende einer Ära: Internet Explorer 11 ist im Ruhestand, hier ist, was Sie wissen müssen Apr 20, 2023 pm 06:52 PM

Der 15. Juni 2022 ist der Tag, an dem Microsoft den Support für Internet Explorer 11 (IE11) beendet und sein Kapitel über Legacy-Browser abschließt. Das Unternehmen erinnert Nutzer bereits seit Längerem an dieses End-of-Life-Datum und fordert sie dazu auf, einen Umstieg auf Microsoft Edge zu planen. Microsoft bündelt IE11 mit Windows 8.1 als modernen Standard-Webbrowser für Windows. Obwohl er nie die (aktuellen) Höhen von Chrome erreichte, war er 2014 nach IE8 der am zweithäufigsten verwendete Desktop-Browser. Natürlich mit 20

So lösen Sie das Problem, dass die IE-Verknüpfung nicht gelöscht werden kann So lösen Sie das Problem, dass die IE-Verknüpfung nicht gelöscht werden kann Jan 29, 2024 pm 04:48 PM

Lösungen für IE-Verknüpfungen, die nicht gelöscht werden können: 1. Berechtigungsprobleme; 3. Softwarekonflikte; 6. IE-Probleme; 9. Überprüfen Sie den Zielpfad der Verknüpfung. 10. Berücksichtigen Sie andere Faktoren. 11. Wenden Sie sich an Fachleute. Detaillierte Einführung: ​1. Klicken Sie mit der rechten Maustaste auf die Verknüpfung, wählen Sie „Eigenschaften“ und stellen Sie sicher, dass Sie über ausreichende Berechtigungen zum Löschen der Verknüpfung verfügen. Wenn nicht, können Sie versuchen, die Verknüpfung auszuführen usw .

So aktivieren Sie die IE-Beschleunigungsfunktion So aktivieren Sie die IE-Beschleunigungsfunktion Jan 30, 2024 am 08:48 AM

Wie aktiviere ich die IE-Beschleunigungsfunktion? Wenn der IE zu langsam ist, um Webseiten zu öffnen, können wir darin den Hardwarebeschleunigungsmodus aktivieren. Viele Freunde berichteten, dass die Geschwindigkeit beim Öffnen von Webseiten bei Verwendung des IE-Browsers extrem langsam ist, was auch einen gewissen Einfluss auf unser Surfen im Internet hat. Ich möchte den Editor nur fragen, ob es eine Lösung gibt. In diesem Fall können Sie den Hardwarebeschleunigungsmodus des IE-Browsers aktivieren. Werfen Sie einen Blick unten! Um die Beschleunigungsfunktion im IE zu aktivieren, öffnen Sie den sicheren IE-Browser, klicken Sie auf das zahnradförmige „Einstellungen“-Symbol in der oberen rechten Ecke und wählen Sie „Internetoptionen“ zur Eingabe, wie in der Abbildung gezeigt. 2. Klicken Sie in der Tab-Navigation oben im Fenster „Internetoptionen“ auf „Erweitert“, wie in der Abbildung dargestellt. 3.

See all articles