• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Ładowanie zdjęcia - wykrywanie zdarzenia

Object Storage Arubacloud
0 głosów
124 wizyt
pytanie zadane 16 maja 2020 w JavaScript przez Allen Obywatel (1,010 p.)
zamknięte 16 maja 2020 przez Allen

Podczas ładowania na stronę, przed submitowaniem, chcę pokazać je załadowane w miniaturce. Napisałem funkcję, która to wykonuje. Nie wiem jednak jak wykryć zdarzenie, przy którym funkcja ta mogłaby być wywoływana. Próbowałem użyć eventu 'load', lecz nie działa. Znalazłem takie rozwiązanie:

<input class="sth" id="file" name="sth" type="file" onchange="showPreview(event);">

jednak szukam kodu wykonywanego tylko w js.

komentarz zamknięcia: Otrzymałem odpowiedź

1 odpowiedź

+1 głos
odpowiedź 16 maja 2020 przez eunstachy Stary wyjadacz (14,180 p.)
wybrane 16 maja 2020 przez Allen
 
Najlepsza
document.getElementById('file').addEventListener('change', () => {
    // Your code to preview image.
});

Lub jeśli piszesz w jQuery (czego już raczej nie powinno się robić):

$('#file').change(() => {
  // Your code
})

 

komentarz 16 maja 2020 przez Allen Obywatel (1,010 p.)

Wielkie dzięki. Przed załadowaniem zdjęcia na ekranie wyświetla się taka miniaturka:

W jaki sposób mogę wyśrodkować napis "Image Preview"? Bezskutecznie próbowałem  użyć tych właściwości:

.classname img[alt] {
    /* line-height: 140px; */
    /* text-align: center; */
    /* vertical-align: middle; */
} 

Dodatkowo nie wiem jak pozbyć się tej ikony niewczytanego zdjęcia.

komentarz 16 maja 2020 przez eunstachy Stary wyjadacz (14,180 p.)

Wstaw tag <img> gdzie jako atrybut src dodasz jakiś obrazek zastępczy np 

https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fs3.amazonaws.com%2FFringeBucket%2Fimage_placeholder.png&f=1&nofb=1

następnie po załadowaniu zdjęcia prze użytkownika podmień ten atrybut załadowanym zdjęciem, dzięki czemu obrazek zastępczy zostanie zastąpiony podglądem zdjęcia.

komentarz 16 maja 2020 przez Allen Obywatel (1,010 p.)
edycja 16 maja 2020 przez Allen
Faktycznie, nie pomyślałem o takim rozwiązaniu, dzięki. Spróbuję tak zrobić, ale czy teoretycznie dałoby się to wykonać beż ładowania zdjęć (np. żeby nie obciążać procesu renderowania)?
komentarz 16 maja 2020 przez eunstachy Stary wyjadacz (14,180 p.)

Czyli żeby nie było żadnego obrazka zastępczego zanim nie załaduje się zdjęcia? Nie testowałem takiego rozwiązania ale możesz spróbować do <input type="file" /> dodać klasę np d-none

.d-none {
  display: none
}

Następnie w Js usuwać tą klasę gdy zostanie załadowane zdjęcie do uploadu:

document.getElementById('file').addEventListener('change', (e) => {
    e.target.classlist.remove('d-none')
    // Your code to preview image.
});

 

komentarz 16 maja 2020 przez Allen Obywatel (1,010 p.)
Super, dzięki jeszcze raz.

Podobne pytania

0 głosów
1 odpowiedź 196 wizyt
pytanie zadane 30 marca 2017 w JavaScript przez przemek-mtk- Początkujący (390 p.)
+1 głos
0 odpowiedzi 212 wizyt
pytanie zadane 26 stycznia 2022 w JavaScript przez PH03NIX Mądrala (6,130 p.)
0 głosów
0 odpowiedzi 292 wizyt

92,579 zapytań

141,432 odpowiedzi

319,657 komentarzy

61,963 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...