Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: dan67 26. 08. 2018, 12:10:21
-
Zdravím,
potřebuju poradit s JS a načtením externího souboru s proměnnými.
V html hlavičce mám <script src="db.js"></script>, ale potřeboval bych selektivně, podle jiné proměnné načíst odpovídající verzi db.js souboru (db_v1.js, db_v2.js). Ale vůbec netuším jak to udělat.
Netuším jak nahradit <script src="db.js"> z html hlavičky stránky JS kodem, který vybere správnou verzi mého db souboru.
-
ta proměnná je co zač? jde o proměnnou z cookie, proměnnou vypočtenou na základě vstupu co, uživatel zadá v input, proměnnou, co se tam (do zdrojáku)vsříkne ze serveru?)?
Předpokládám, že to nechceš (nebo nejde )dělat takto na serveru(kod na serveri)
<script src="db.js<?php echo $(verze)?"1":2" ?>/>
Napadá mě jiné řešení,(kod na klientu), nevím, jestli je akceptovatelné (leak zdrojáku, vyšší velikost):
<script>
if(verze==1){kod prvni verze ;} else {kod druhe verze}
</script>
Případně lze použít eval, document.write
-
Pokud to chcete dělat v čistém JavaScriptu, ve vašem skriptu vytvoříte nový element script, nastavíte mu požadované src a element vložíte do stránky. Pokud nevíte, jak to udělat v čistém JavaScriptu, použijte třeba jQuery a funkci getScript() (http://api.jquery.com/jQuery.getScript/), kde už je to vyřešené.
-
Z "hlavní" stránky otevírám stránku např. "databaze.html" s několika parametry. Podle jednoho z těchto předaných parametrů si stránka databaze.html načte odpovídající db_vx.js (db_v1.js, db_v2.js,...).
Můžu si vytvořit ručně stránky databaze_v1.html, databaze_v2.html,... a do nich dát správný <script src="db_vX.js"></script>.
Nešlo by to ale univerzálně, s jednou stránkou pomocí předaného parametru? Radši bych se vyhnul jquery a podobným balíkům...
-
Jde to samozřejmě napsat i v čistém JavaScriptu, pomocí createElement (https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement) si vytvoříte element script, nastavíte mu atribut src a třeba pomocí appendChild (https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild) ho vložíte do hlavičky stránky.
-
Jde to samozřejmě napsat i v čistém JavaScriptu, pomocí createElement (https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement) si vytvoříte element script, nastavíte mu atribut src a třeba pomocí appendChild (https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild) ho vložíte do hlavičky stránky.
Díky, to vypadá, že by šlo.