Hirdetés
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Taci
addikt
Annyira haladtam a témában, hogy valamiért a
keyup-ot nem szereti, viszont akeydown-nal és akeypress-szel nincs baja. (Fórumbejegyzésekben találtam ezt az infót, kipróbáltam, és valóban.)Viszont azért használtam keyup-ot, mert az esemény után figyeltem, hogy változik-e a keresőmező tartalma (nem-e marad üres), és ha karatert ír be a user (tehát nem csak belekattint, és nyom egy shift-et), akkor megjelenik a mező törlése gomb.
var elementMainSearch = document.getElementById("mainSearch");elementMainSearch.addEventListener("keyup", function(event) {var elementMainSearchValue = elementMainSearch.elements[0].value;console.log('elementMainSearchValue: ' + elementMainSearchValue);if (elementMainSearchValue != ""){//törlés gomb megjelenítése}}Így ha beírtam, hogy
q, akkor a konzolba kiírta, hogyelementMainSearchValue: q, és megjelent a törlés gomb.Viszont így, hogy Safarival ez valamiért nem működik, muszáj vagyok keydown-ra vagy keypress-re cserélni a keyup-ot.
Ezekkel viszont az a baj, hogy az eventjük után még nem változik a keresőmező tartalma.
Tehát a fenti kód keydown-nal vagy keypress-szel ezeket az eredményeket adja:q--> elementMainSearchValue:qw--> elementMainSearchValue:qqwe--> elementMainSearchValue:qw
stb.Így ha csak 1 karaktert ír be a user a keresőmezőbe, nem lesz aktív a gomb, mert kell mellé még egy leütés.
Hogyan tudom szerintetek ezt megoldani?
Akár más struktúrával is. (Elindultam a beírt keycode-ok vizsgálatával (Ctrl - 17, Shift - 16, Tab - 9, Enter/Return - 13, Option - 18, Command - 91 stb.), de ott túl sokat kell lekezelni (minden gombot, ami szám vagy betű), az a megoldás nem tetszik.)UPD.:
Azinputevent lesz a jó, úgy látom.
Új hozzászólás Aktív témák
- Szép! Lenovo ThinkPad X1 Yoga G6 x360 Érintős Hajtogatós Laptop Tab 14" -50% i5-1135G7 16/256 +Toll
- Lenovo ThinkPad P15 G1 Tervező Vágó Laptop -50% 15,6" i7-10850H 32/512 QUADRO RTX 3000 6GB FHD
- AOC CU34G2XP/BK - 34" 10 bites VA 3440 x 1440 180Hz 430 cd/m 1ms 1,5 év gari
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- iPhone 11 . 64Gb 77% akksival . A1 függő (Osztrák)
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


