Autor | Zpráva | ||
---|---|---|---|
Inpocasi Profil |
#1 · Zasláno: 12. 11. 2010, 18:56:47 · Upravil/a: Inpocasi
Lze nějak udělat odkaz na stránku a zároveň s ním spustit funkci na té cílové stránce?
Nejlepší asi bude příklad (nefunkční!): Na stránce b.html je odkaz: <a href="a.html" onclick="stanice()">Odkaz na A</a> Při kliknutí na něj chci zobrazit stránku a.html a spustit funkci stanice() Děkuji. |
||
_es Profil |
#2 · Zasláno: 12. 11. 2010, 19:10:50
Inpocasi:
Nejakú takúto dodatočnú funkčnosť budeš musieť spraviť upravením cieľovej adresy, buď časti search alebo hash .
A potom na cieľovej stránke zistíš z objektu location tie časti a podľa nich spustíš nejaký kód. |
||
Witiko Profil |
#3 · Zasláno: 12. 11. 2010, 19:15:01
Není možné. Ale můžeš stránce a.html nastavit onload event.
<a href="a.html">Odkaz na A</a> ... <body onload="stanice()"> |
||
Darker Profil |
#4 · Zasláno: 12. 11. 2010, 19:23:01 · Upravil/a: Darker
Je možné, tak jak to popsal _es.
Příklad: Odkaz: http://pokus.com/pokus.html?skript=alert%28%27baf%27%29 Cíl: <head>....</head> <body onload=spust()/> ... <script> function spust() { eval(getURLParam("skript")); } function getURLParam(strParamName){var strReturn="";var strHref=window.location.href;if(strHref.indexOf("?")>-1){var strQueryString=strHref.substr(strHref.indexOf("?")).toLowerCase();var aQueryString=strQueryString.split("&");for(var iParam=0;iParam<aQueryString.length;iParam++){if(aQueryString[iParam].indexOf(strParamName.toLowerCase()+"=")>-1){var aParam=aQueryString[iParam].split("=");strReturn=aParam[1];break;}}};return unescape(strReturn);}; </script> </body> |
||
_es Profil |
#5 · Zasláno: 12. 11. 2010, 19:24:36 · Upravil/a: _es
Witiko:
On asi myslel zo stránky b.html sa odkazom presunúť na stránku a.html kde by sa spustila funkcia definovaná v a.html . Aspoň ja som to tak pochopil.
|
||
Darker Profil |
#6 · Zasláno: 12. 11. 2010, 19:25:26
No ale vždyť to by šlo. Zkus si to...
|
||
_es Profil |
#7 · Zasláno: 12. 11. 2010, 19:30:22 · Upravil/a: _es
Darker:
To nie je dobrá implementácia toho princípu. To by mohol hocikto vytvoriť odkaz na Inpocasiho stránku so svojim vlastným JS, ktorý by sa po tom spustil. Ja som Witikoho príspevok pochopil tak, že reaguje na možnosť spustiť funkciu, definovanú v b.html , na stránke a.html , čo naozaj nejde, jedine, že by sa ten odkaz otváral do nového okna.
|
||
TomasJ Profil |
#8 · Zasláno: 12. 11. 2010, 20:22:16 · Upravil/a: TomasJ
Co takhle udělat funkci stanice() i s parametrem url ( stanice(url) ) ?
Pak dáš do skriptu window.location.replace(url); a za to skript, který tam je. Následně uděláš jen <a onclick='stanice("a.html");'>Odkaz na A</a> a mělo by to taky fungovat ne? |
||
Darker Profil |
#9 · Zasláno: 12. 11. 2010, 21:35:38
_es:
„svojim vlastným JS“ Já to ukazoval obeceně. Samosebou, pak by to vypadalo spíš takto: function spust() { if(getURLParam("skript")=="neco")udelejneco(); ; } Myslel jsem, že mu to dojde. |
||
Časová prodleva: 8 dní
|
|||
Inpocasi Profil |
#10 · Zasláno: 20. 11. 2010, 16:34:07
Děkuji za pomoc.
|
||
Časová prodleva: 13 let
|
0