Autor Zpráva
rockyStalone
Profil *
Dobrý den,
potřebuju se zeptat, mám třeba toto:
<script type="text/javascript" src="soubor.js"></script>
ale já mám možnost načíst jen jeden soubor. Jak mám udělat, abych to načetl třeba takto:
<script type="text/javascript" src="soubor.js?f=1"></script>
a načte to nějakou funkci a když tam dám ?f=2 tak to načte zase jinou funkci.
Koukal jsem, že to takhle má vyřešeno více webů, jen nevím jak.
Poradil by mi někdo, jak se toto dělá? Dík
Str4wberry
Profil
(Tyhle parametry se většinou používají kvůli invalidaci souboru, který si prohlížeč uložil do cache a další význam nemají.)

Podmínku podle toho ?f=2 můžete udělat na straně serveru.

V JS se k této hodnotě dostanete jedině prohledáváním DOMu, ale to už mi přijde elegantnější si přímo nadeklarovat nějakou proměnnou.

<script>var f = 2;</script>
<script type="text/javascript" src="soubor.js"></script>

A v soubor.js mít podmínku:
if (f == 2) {}

Případně volat příslušnou funkci ze soubor.js až v HTML.
<script type="text/javascript" src="soubor.js"></script>
<script>f2()</script>


Zjistit query string z DOMu, nebyla-li by jiná možnost, by šlo třeba takto: Živá ukázka
_es
Profil
rockyStalone:
Asi nerozumiem celkom dotazu. Čo konkrétne znamená „mám možnost načíst jen jeden soubor.“? Predsa na zobrazenie stránky sa ti pre takýto prípad musia načítať súbory minimálne dva: soubor.js a ešte predtým HTML súbor. Kde a aké je to obmedzenie? Prečo do toho JS súboru nedáš všetko, čo treba - aj „nejakú funkciu“ aj „inú funkciu“ a môžeš potom používať obe funkcie?

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: