Heim Web-Frontend js-Tutorial Erstellen Sie eine personalisierte und leistungsstarke virtuelle Jquery-Tastatur (VirtualKeyboard)_jquery

Erstellen Sie eine personalisierte und leistungsstarke virtuelle Jquery-Tastatur (VirtualKeyboard)_jquery

May 16, 2016 pm 04:34 PM
jquery 虚拟键盘

In einem aktuellen Projekt war ich für das Frontend der Webseite verantwortlich. Der Kunde benötigte zur Bedienung einen Touchscreen, ohne externe Maus und Tastatur, musste aber auch Text eingeben können Zahlen, Englisch und Chinesisch. Nachdem ich darüber nachgedacht hatte, entschied ich mich, JS zur Implementierung der virtuellen Tastatur zu verwenden.

Zuerst suchte ich im Internet nach einer virtuellen JS-Tastatur. Nach sorgfältiger Prüfung verliebte ich mich in VirtualKeyboard, ein leistungsstarkes virtuelles JS-Tastatur-Plug-in.

Lassen Sie uns kurz VirtualKeyboard vorstellen. Es verfügt über mehr als 100 integrierte Tastaturlayouts, mehr als 200 Eingabemethoden, 9 Sätze optionaler Skin-Pläne und unterstützt selbst erstellte Eingabemethoden.

Fügen Sie zuerst die Download-Adresse hinzu: http://www.corallosoftware.it/Download/download.html Dieses Tutorial verwendet 3.71 und bietet keinen separaten Download Bei Bedarf können Sie meine modifizierte Version am Ende des Artikels herunterladen

Schauen Sie sich nach dem Herunterladen zuerst das Demodokument an und öffnen Sie dann Jsvkjscriptsdemo_inline.html. Sie können sehen, dass die virtuelle Tastatur sehr schön ist und chinesische Pinyin-Eingaben unterstützt, was völlig den Erwartungen entspricht. Wie unten gezeigt:

In das Projekt integrieren und einfach machen!

Kopieren Sie zunächst die Dateien im Jsvkjscripts-Verzeichnis in das Projekt. Die Textdateien und HTML-Demonstrationsdateien können gelöscht werden.

JS-Dateien, auf die auf der Projektseite verwiesen wird:

Code kopieren Der Code lautet wie folgt:



Erklären Sie: vk_layout=CN Chinese Simpl. bedeutet, dass die Standardeingabemethode auf vereinfachtes Chinesisch eingestellt ist,

vk_skin=flat_gray bedeutet, dass flat_gray als Standard-Skin ausgewählt ist. Diese beiden können je nach persönlichem Bedarf eingestellt werden.

Funktion zum Aufrufen/Ausblenden der virtuellen Tastatur:

VirtualKeyboard.toggle("txt_Search", "softkey");
txt_Search ist die ID des Textfelds und softkey ist die ID des Elements, in dem die virtuelle Tastatur angezeigt wird.

Hier ist ein einfaches Beispiel:

Code kopieren Der Code lautet wie folgt:



​​ ​



                                                                                                                                                                                                        
 

Wirkung:

Passen Sie die Funktionen, die Sie benötigen, Schritt für Schritt an

Die Grundfunktionen sind implementiert und der nächste Schritt besteht darin, zwischen Chinesisch und Englisch zu wechseln. Klicken Sie zunächst auf die Feststelltaste, um auf Großbuchstaben umzuschalten, und versuchen Sie es, aber das Ergebnis ist enttäuschend. Beim Umschalten auf Großbuchstaben im chinesischen Modus ist die Eingabe immer noch chinesisch. Sie können nur auf das Auswahlmenü für die Eingabemethode in der unteren rechten Ecke klicken, nach US suchen und zur englischen Eingabemethode wechseln. Das ist nicht möglich. Sie müssen jedes Mal zwischen Hunderten von Optionen hin und her wechseln.

Also hatte ich eine vorläufige Idee, löschte die Dropdown-Liste und erstellte manuell eine Liste mit nur chinesischen und englischen Optionen. Um die Dropdown-Liste zu löschen, müssen Sie zunächst ihre ID kennen. Diese Art von Ebene wird normalerweise dynamisch erstellt. Daher habe ich Jsvkjscriptsvirtualkeyboard.js gefunden und geöffnet. Der Code ist komprimiert und kann direkt gelesen werden. Also müssen wir es zuerst dekomprimieren. Öffnen Sie http://jsbeautifier.org/, kopieren Sie den Code in der JS-Datei in das Eingabefeld, klicken Sie auf die Schaltfläche und die Dekomprimierung ist abgeschlossen. Strg A, Strg C zum Kopieren in die neue JS-Datei, OK, Sie können sie lesen. Suchen Sie nach dem Schlüsselwort „

"" ""
kb_mappingselector ist die ID des Auswahlfelds für das Tastaturlayout, kb_langselector ist die ID des Auswahlfelds für die Eingabemethode und kb_langselector ist die gewünschte ID.

Mit der ID kann sie geändert werden. Da sie dynamisch erstellt wird, kann ihre ID erst nach Abschluss der Erstellung abgerufen werden. Daher habe ich den Code geschrieben, nachdem die virtuelle Tastatur geladen wurde.

Der folgende Code verwendet das JQuery-Framework und muss referenziert werden, bevor er normal verwendet werden kann.

Code kopieren Der Code lautet wie folgt:

Funktionstest(){
$("#kb_langselector").empty().append("

Nach dem Testen habe ich ein Problem festgestellt. Der Ladevorgang wurde bei 10 % gestoppt und die Seite meldete einen JS-Fehler.

Aufgrund der Fehlerbeschreibung habe ich wahrscheinlich vermutet, dass es ein Problem mit der von mir erstellten Option gab, aber ich konnte das spezifische Problem nach mehreren Spuren und Debugging nicht finden. Wenn jemand den Fehler findet, hoffe ich, dass Sie mich aufklären können !

Wenn Sie auf einen Fehler stoßen, den Sie längere Zeit nicht beheben können, ändern Sie Ihre Meinung!

Die ursprüngliche Idee ist gescheitert, also habe ich es mir anders überlegt. Da mit dem, was ich gebaut habe, etwas nicht stimmte, werde ich es nicht selbst bauen, aber ich brauche das zusätzliche Zeug nicht.

Dieser Idee folgend habe ich den Ladecode noch einmal studiert und festgestellt, dass das von der Eingabemethode geladene JS in Jsvkjscriptslayoutslayouts.js definiert ist. Deshalb habe ich die überflüssigen Optionen entschieden gestrichen und nur noch zwei Optionen übrig: Chinesisches Pinyin und US. Die Darstellungen nach der Änderung sind wie folgt. Es gibt nur zwei Optionen: Chinesisch und Englisch, was viel sauberer ist.

Das ist nicht das, was ich will!

Das Umschalten zwischen Chinesisch und Englisch wurde implementiert, aber die Bedienung ist nicht bequem genug. Was ich brauche, ist ein Umschalten mit einem Klick auf der Tastatur.

Suchen Sie zuerst die Skin-Datei Jsvkjscriptscssflat_graybutton_set.png. Ich möchte selbst eine Schaltfläche hinzufügen!

Originalbild:

Nach der Änderung:

Nur das Bild zu ändern reicht definitiv nicht aus. Der Button wird im Stylesheet positioniert und verändert das Stylesheet weiter! Fügen Sie den folgenden Code am Ende des Stylesheets Jsvkjscriptscssflat_graykeyboard.css hinzu.

Code kopieren Der Code lautet wie folgt:

#kbDesk div#kb_binput_method {
float: rechts;
Breite: 102px;
}
#kbDesk div#kb_binput_method a {
        Hintergrundposition: -453px 0px;
}
#kbDesk div#kb_binput_method.kbButtonBewegen Sie den Mauszeiger über ein {
        Hintergrundposition: -453px -38px;
}
#kbDesk div#kb_binput_method.kbButtonDown ein {
        Hintergrundposition: -453px -76px;
}

Als nächstes müssen Sie Ereignisse für die Schaltfläche in der JS-Datei definieren. Öffnen Sie virtualkeyboard.js und suchen Sie

Code kopieren Der Code lautet wie folgt:

var C = {
14: 'Rücktaste',
15: 'Tab',
28: 'Eintreten',
29: 'Großbuchstaben',
41: 'shift_left',
52: 'shift_right',
53: 'del',
54: 'ctrl_left',
55: 'alt_left',
56: 'Leerzeichen',
57: 'alt_right',
58: 'ctrl_right'
};

Fügen Sie unten 59: „input_method“ hinzu. Denken Sie daran, nach „ctrl_right“ ein Komma einzufügen. Nach der Änderung:

Code kopieren Der Code lautet wie folgt:

var C = {
14: 'Rücktaste',
15: 'Tab',
28: 'Eintreten',
29: 'Großbuchstaben',
41: 'shift_left',
52: 'shift_right',
53: 'del',
54: 'ctrl_left',
55: 'alt_left',
56: 'Leerzeichen',
57: 'alt_right',
58: 'ctrl_right',
59: 'input_method'
};

Suchen Sie weiterhin nach dem Antwortcode für den Klick auf die Schaltfläche:

Code kopieren Der Code lautet wie folgt:

var d = Funktion (i) {
        var e = DOM.getParent(i.srcElement || i.target, 'a');
        if (!e || e.parentNode.id.indexOf(Q) < 0) return;
        e = e.parentNode;
        var iI = X;
        var il = e.id.substring(Q.length);
        Schalter (il) {
            Fall „caps“:
                iI = iI ^ s;
                Pause;
            case „shift_left“:
            case „shift_right“:
                if (i.shiftKey) break;
                iI = iI ^ Z;
                Pause;
            case „alt_left“:
            case „alt_right“:
            case „ctrl_left“:
            case „ctrl_right“:
                iI = iI ^ (i.altKey << 1 ^ w) ^ (i.ctrlKey << 2 ^ W);
                Pause;
            Standard:
                if (_) DOM.CSS(e).addClass(y.buttonDown);
                Pause
        }
        if (X != iI) {
            B(iI);
            b();
        }
        i.preventDefault();
        i.stopPropagation();
    };

  修改为:

复制代码 代码如下:

var d = Funktion (i) {
        var e = DOM.getParent(i.srcElement || i.target, 'a');
        if (!e || e.parentNode.id.indexOf(Q) < 0) return;
        e = e.parentNode;
        var iI = X;
        var il = e.id.substring(Q.length);
        Schalter (il) {
            Fall „caps“:
                iI = iI ^ s;
                Pause;
            case „input_method“:
                if (document.getElementById("kb_langselector").value == 'US US') {
                    VirtualKeyboard.switchLayout("CN Chinese Simpl. Pinyin");

                }
                sonst {
                    VirtualKeyboard.switchLayout("US US");

                }
                Pause;
            case „shift_left“:
            case „shift_right“:
                if (i.shiftKey) break;
                iI = iI ^ Z;
                Pause;
            case „alt_left“:
            case „alt_right“:
            case „ctrl_left“:
            case „ctrl_right“:
                iI = iI ^ (i.altKey << 1 ^ w) ^ (i.ctrlKey << 2 ^ W);
                Pause;
            Standard:
                if (_) DOM.CSS(e).addClass(y.buttonDown);
                Pause
        }
        if (X != iI) {
            B(iI);
            b();
        }
        i.preventDefault();
        i.stopPropagation();
    };


  既然有了按钮,就不需要显示下面的下拉框了,所以,给它隐藏掉!

  OK,大功告成!看下效果图

  外观和功能搞定了,但一看它的文件夹,足足7M多,精简!精简过程就不写啦,精简完成后:

  写了这么多,谢谢你能把它看完,最后放上全部修改精简完成之后的源码!

http://www.jb51.net/jiaoben/228716.html

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

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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)

Ausführliche Erläuterung der jQuery-Referenzmethoden: Kurzanleitung Ausführliche Erläuterung der jQuery-Referenzmethoden: Kurzanleitung Feb 27, 2024 pm 06:45 PM

Detaillierte Erläuterung der jQuery-Referenzmethode: Kurzanleitung jQuery ist eine beliebte JavaScript-Bibliothek, die häufig in der Website-Entwicklung verwendet wird. Sie vereinfacht die JavaScript-Programmierung und bietet Entwicklern umfangreiche Funktionen und Features. In diesem Artikel wird die Referenzmethode von jQuery ausführlich vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern einen schnellen Einstieg zu erleichtern. Einführung in jQuery Zuerst müssen wir die jQuery-Bibliothek in die HTML-Datei einführen. Es kann über einen CDN-Link eingeführt oder heruntergeladen werden

Wie verwende ich die PUT-Anfragemethode in jQuery? Wie verwende ich die PUT-Anfragemethode in jQuery? Feb 28, 2024 pm 03:12 PM

Wie verwende ich die PUT-Anfragemethode in jQuery? In jQuery ähnelt die Methode zum Senden einer PUT-Anfrage dem Senden anderer Arten von Anfragen, Sie müssen jedoch auf einige Details und Parametereinstellungen achten. PUT-Anfragen werden normalerweise zum Aktualisieren von Ressourcen verwendet, beispielsweise zum Aktualisieren von Daten in einer Datenbank oder zum Aktualisieren von Dateien auf dem Server. Das Folgende ist ein spezifisches Codebeispiel, das die PUT-Anforderungsmethode in jQuery verwendet. Stellen Sie zunächst sicher, dass Sie die jQuery-Bibliotheksdatei einschließen. Anschließend können Sie eine PUT-Anfrage senden über: $.ajax({u

So rufen Sie die virtuelle Tastatur auf dem Computer auf So rufen Sie die virtuelle Tastatur auf dem Computer auf Feb 28, 2024 pm 06:52 PM

Benutzer können die Anzeige der virtuellen Tastatur auf dem Computer frei ein- und ausschalten. Einige Benutzer wissen nicht, wie sie die virtuelle Tastatur auf dem Computer aufrufen können. Sie müssen lediglich die Symbolleiste in den Eigenschaften der Taskleiste überprüfen und auf die Taskleiste klicken. Als nächstes folgt eine Einführung des Herausgebers in die Methode zum Einrichten der virtuellen Computertastatur für Benutzer. Interessierte Benutzer sollten vorbeikommen und einen Blick darauf werfen! Wie rufe ich die virtuelle Tastatur auf dem Computer auf? Antwort: Überprüfen Sie die Symbolleiste in den Eigenschaften der Taskleiste und klicken Sie dann auf die Taskleiste, um eine detaillierte Einführung zu erhalten: 1. Klicken Sie mit der rechten Maustaste auf die Taskleiste und klicken Sie unten auf [Eigenschaften]. 2. Wählen Sie in den Eigenschaften der Taskleiste die Option [Symbolleiste]. 3. Aktivieren Sie das Kontrollkästchen vor [Touch-Tastatur] und klicken Sie dann unten rechts auf [Übernehmen]. 4. Sie können das Tastaturlogo in der unteren rechten Taskleiste des Computers sehen. 5. Klicken Sie auf das Logo

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Wie entferne ich das Höhenattribut eines Elements mit jQuery? Feb 28, 2024 am 08:39 AM

Wie entferne ich das Höhenattribut eines Elements mit jQuery? Bei der Front-End-Entwicklung müssen wir häufig die Höhenattribute von Elementen manipulieren. Manchmal müssen wir möglicherweise die Höhe eines Elements dynamisch ändern, und manchmal müssen wir das Höhenattribut eines Elements entfernen. In diesem Artikel wird erläutert, wie Sie mit jQuery das Höhenattribut eines Elements entfernen, und es werden spezifische Codebeispiele bereitgestellt. Bevor wir jQuery zum Betreiben des Höhenattributs verwenden, müssen wir zunächst das Höhenattribut in CSS verstehen. Das Höhenattribut wird verwendet, um die Höhe eines Elements festzulegen

jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite Feb 28, 2024 pm 09:06 PM

Titel: jQuery-Tipps: Ändern Sie schnell den Text aller Tags auf der Seite. In der Webentwicklung müssen wir häufig Elemente auf der Seite ändern und bedienen. Wenn Sie jQuery verwenden, müssen Sie manchmal den Textinhalt aller a-Tags auf der Seite gleichzeitig ändern, was Zeit und Energie sparen kann. Im Folgenden wird erläutert, wie Sie mit jQuery den Text aller Tags auf der Seite schnell ändern können, und es werden spezifische Codebeispiele angegeben. Zuerst müssen wir die jQuery-Bibliotheksdatei einführen und sicherstellen, dass der folgende Code in die Seite eingefügt wird: &lt

Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern Feb 28, 2024 pm 05:42 PM

Titel: Verwenden Sie jQuery, um den Textinhalt aller Tags zu ändern. jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur Verarbeitung von DOM-Operationen verwendet wird. Bei der Webentwicklung müssen wir häufig den Textinhalt des Link-Tags (eines Tags) auf der Seite ändern. In diesem Artikel wird erläutert, wie Sie mit jQuery dieses Ziel erreichen, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir die jQuery-Bibliothek in die Seite einführen. Fügen Sie den folgenden Code in die HTML-Datei ein:

Verstehen Sie die Rolle und Anwendungsszenarien von eq in jQuery Verstehen Sie die Rolle und Anwendungsszenarien von eq in jQuery Feb 28, 2024 pm 01:15 PM

jQuery ist eine beliebte JavaScript-Bibliothek, die häufig zur DOM-Manipulation und Ereignisbehandlung in Webseiten verwendet wird. In jQuery wird die Methode eq() verwendet, um Elemente an einer bestimmten Indexposition auszuwählen. Die spezifischen Verwendungs- und Anwendungsszenarien sind wie folgt. In jQuery wählt die Methode eq() das Element an einer angegebenen Indexposition aus. Indexpositionen beginnen bei 0 zu zählen, d. h. der Index des ersten Elements ist 0, der Index des zweiten Elements ist 1 und so weiter. Die Syntax der eq()-Methode lautet wie folgt: $("s

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Feb 29, 2024 am 09:03 AM

Wie kann man feststellen, ob ein jQuery-Element ein bestimmtes Attribut hat? Wenn Sie jQuery zum Betreiben von DOM-Elementen verwenden, stoßen Sie häufig auf Situationen, in denen Sie feststellen müssen, ob ein Element ein bestimmtes Attribut hat. In diesem Fall können wir diese Funktion einfach mit Hilfe der von jQuery bereitgestellten Methoden implementieren. Im Folgenden werden zwei häufig verwendete Methoden vorgestellt, um festzustellen, ob ein jQuery-Element über bestimmte Attribute verfügt, und um spezifische Codebeispiele anzuhängen. Methode 1: Verwenden Sie die Methode attr() und den Operator typeof //, um zu bestimmen, ob das Element ein bestimmtes Attribut hat

See all articles