Lösen Sie schnell das Problem des langsamen und hängenden Öffnens von input[type=file]

Lösen Sie schnell das Problem des langsamen und hängenden Öffnens von input[type=file]

Warum ist die Geschwindigkeit beim Öffnen des lokalen Ordners besonders langsam, wenn der Eingabe-Tag-Typ „Datei“ ist und im Tag das Attribut „acccpet=‚image/*‘“ festgelegt ist?

Nach dem Testen habe ich festgestellt, dass es auf dem Mac bei Safari, Firefox und Chrome kein Verzögerungsproblem gibt (Opera stürzt aus irgendeinem Grund immer ab).

Unter Windows gibt es bei Firefox keine Verzögerungen, nur bei Chrome gibt es Verzögerungen.

Also habe ich beschlossen, zuerst accpet zu entfernen ...

Tatsächlich gab es kein Verzögerungsproblem.

Dann hat dieses Paket accpet="image/jpg" ausprobiert und es blieb wirklich nicht hängen! !

Das Problem scheint "image/*" zu sein.

Aber die ursprüngliche Absicht beim Schreiben von accpet bestand darin, alle Bilder herauszufiltern_(:з」∠)_

Um diese Anforderung zu erfüllen und die Benutzererfahrung zu verbessern, können wir nur Aufzählungen verwenden.

Geänderter Code

<Eingabetyp="Datei" accpet="Bild/gif,Bild/png,Bild/jpeg,Bild/jpg,Bild/bmp"/>

Versuchen Sie es noch einmal, es funktioniert einwandfrei!

Es stellt sich heraus, dass dies daran liegt, dass die SafeBrowsing- Funktion von Chrome Dateien beim Hochladen oder Speichern überprüft.

Wenn die Netzwerkverbindung zu Google schnell ist, sollte es kein Problem geben.

Wenn die Verbindung jedoch langsam oder unterbrochen ist, lässt SafeBrowsing Chrome für eine Weile hängen, bis die Dateiprüfung abgeschlossen ist oder eine Zeitüberschreitung eintritt.

Die Verwendung von accept="image/png, image/jpeg, image/gif" kann dieses Problem lösen, da diese MIME-Typen in der SafeBrowsing- Whitelist stehen und nicht geprüft werden müssen.

Wenn Sie jedoch etwas wie accept="image/*" verwenden, funktioniert es nicht und bleibt möglicherweise hängen.

Der obige Artikel zur schnellen Lösung des Problems des langsamen und hängenden Öffnens von input[type=file] ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

<<:  So finden Sie bei der Anmeldeoberfläche die richtige Balance zwischen Benutzerfreundlichkeit und Sicherheit

>>:  Detaillierte Erläuterung der Wertübertragung von nicht über- und untergeordneten Komponenten in Vue3

Artikel empfehlen

Standard-CSS-Stil der XHTML-Sprache

html,Adresse, Blockzitat, Körper, dd, div, dl,dt,...

Detaillierte Erklärung zur Verwendung von ElementUI in Vue

Anmeldung + SessionStorage Effektanzeige Nach ein...

js zur Implementierung einer Interferenz mit Verifizierungscodes (statisch)

In diesem Artikel wird der spezifische Code von j...

Beispielcode für horizontalen Linienstil „hr“

Code kopieren Der Code lautet wie folgt: <hr S...

CSS3-Zeitleistenanimation

Ergebnisse erzielen html <h2>CSS3-Zeitleist...

Detaillierte Schritte zum Erstellen eines NFS-Dateifreigabeservers unter Linux

Linux erstellt NFS-Server Um den Datenaustausch z...

Docker Gitlab+Jenkins+Harbor erstellt einen persistenten Plattformbetrieb

CI/CD-Übersicht CI-Workflow-Design Das Git-Codeve...

Detaillierte Schritte zur Installation von Anaconda unter Linux (Ubuntu 18.04)

Anaconda ist die beliebteste Python-Plattform für...

Grundlegende Operationen der MySQL-Lernnotizentabelle

Tabelle erstellen Tabelle erstellen Tabellenname ...

Ein IE-Absturzfehler

Code kopieren Der Code lautet wie folgt: <styl...

Ein grafisches Tutorial zur Installation von MySQL unter Windows

Zusammenfassung: Dieser Artikel erläutert hauptsä...