-
Fototrend
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
Sziasztok!
Próbálnék egy olyan megoldást csinálni, hogyha eredeti forrásból (CDN) nem sikerül behúzni a kívánt .js fájlt, akkor használja saját szerverről.
Többféle megoldással is próbálkoztam, de egyedül csak a
document.writeműködik, a többi sajnos nem.JSFiddle: https://jsfiddle.net/942fgodv/
(Elsőnek egy Bootstrap JS-t töltenék a példa kedvéért, azt direkt elrontom, aztán jön a fallback, ami a példában egy custom alert JS, szintén CDN-ről.)Tehát az elején szimulálom a CDN elérhetetlenségét, elrontom a linket (1-est írok elé).
Aztán próbáltam egy olyan megoldást, hogy a <script> tagbe írtam egy onerror-lépést, de sajnos nem működik. (Fura, CSS-nél működik.)
Aztán jön a
document.write, ami szépen működik, fel is jön az custom alert, tehát betöltött a 2. JS, és így a custom funkciót is tudta használni.
Eredetileg ezzel a megoldással készítettem el az oldalam ezen részét, viszont a Lightroom lepontozza, azt írja, ne használjam, mert lassíthatja a lassú kapcsolattal rendelkezőknél a betöltést. Ezért keresek más megoldást.Harmadik megoldási kísérletem pedig az, hogy document.head.appendChild()-dal hozzáadom a feltöltött script taget.
Ez szépen hozzá is adja, betöltés után látom, hogy jó helyen van (a custom funkció hívása előtt), viszont gondolom, a HTML feldolgozása nem várja meg, így hamarabb jut a funkcióhíváshoz, minthogy betöltené a hozzá szükséges JS-t, ezért le sem fut.Miért megy document.write-tal, és miért nem appendChild-dal? (Bár gondolom, azért nem, mert aszinkronban tölti le, míg a document.write blokkolja a további feldolgozást addig. És talán pont ezért nem javasolt a használata.)
Tudtok erre a problémára jó megoldást?
(Nem csak a CDN elérhető / nem elérhető helyzetre kell, másra is szeretném használni.)Köszönöm.
Új hozzászólás Aktív témák
- Asus GL703VM i7-7700HQ 2.8Ghz up 3.8Ghz GTX 1060 (6GB) Gaming Laptop
- Samsung S27E510C LCD monitor / 1920 x 1080 / 4ms / 60hz / ivelt 4000R / VA panel / szép állapot
- ÚJ CORE I5 14400F GAMER OPTIMUM PC 16-32GB DDR4 512GB NVME SSD NVIDIA RTX 2060 6GB DDR6 2ÉV GAR!
- ASUS CORE I5 8400 GAMER MAX PC 16Gb RAM 512GB SSD GEFORCE RTX 2060 SUPER 8GB DDR6 1ÉV GAR!
- ÚJ! BONTATLAN MX500 2.5 SSD 1TB
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Samsung Galaxy A53 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Zalman S3 Black modern, letisztult szèpsèg
- HIBÁTLAN iPhone 13 Pro Max 256GB Gold -1 ÉV GARANCIA -Kártyafüggetlen, MS3758, 100% Akkumulátor
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

