uiouio1 [ Konsul ]
pomocy z java scriptem!
witam,
Potrzebuje skryptu ktory wyswietla skrypt z losowego zrodla na mojej stronie. Napisalem cos takiego i nie dziala. Moze ktos wie co zrobilem zle?
w head:
<script type="javascript" >
function get_random()
var ranNum= Math.floor(Math.random()*43);
return ranNum;
function peel()
var whichQuote=get_random();
var quote=new Array(3)
quote[0]="
quote[1]="
quote[2]="
echo(quote[whichQuote]);
</script>
w body
<script type="text/javascript" src="peel();"></script>
nie dziala :P nie jestem pewien co do echo w java scripcie
uiouio1 [ Konsul ]
up
Qbaa [ Senator ]
ciała funkcji muszą być ubrane w nawiasy klamrowe
co to za funkcja peel() ?
masz rację, że w JS echo nie działa
polecam
maviozo [ Man with a movie camera ]
Zmienisz echo na document.write( ) i powinien wyświetlić, ale Ty chcesz żeby wyświetliło zawartość tych linków, czy tylko linki? Bo wyświetli tylko te linki.
legrooch [ MPO Squad Member ]
Chłopakowi chodzi o wyświetlenie w formie tekstu zawartości skryptów.
maviozo [ Man with a movie camera ]
To raczej niech zapomni, że w tak prosty sposób to zrobi:)
uiouio1 [ Konsul ]
chodzi mi o odpalenie losowego skryptu ktore sa na innym serwerze.
nie dziala.
maviozo [ Man with a movie camera ]
Dałoby się to zrobić, jeśli generowałbyś stronę za każdym razem.
Musisz z php spróbować.
MOD [ Generaďż˝ ]
Dodaj te skrypty jak include w c++ czyli
<head>
<script src="1.js"></script>
<script src="2.js"></script>
<script src="3.js"></script>
</head>
I w zaleznosci co wylosuje odpalasz funkcje ze skryptu 1 albo 2 i 3.
Zakladam ze w skrypcie 1 masz funkcje funkcja1, w skrypcie 2 masz funkcja 2
i potem
switch(n)
case 1:
funkcja1
break;
case 2:
funkcja2
break;
case 3:
funkcja3
legrooch [ MPO Squad Member ]
Mógłbyś spróbować Ajaxem to rozwiązać.
maviozo [ Man with a movie camera ]
MOD to będzie dobre przy małej ilości, ale przy np. 50 ?
<script>
losowe=new Array()
losowe[0]="
losowe[1]="
losowe[2]="
for (r=0;r<losowe.length;r++) document.write("<script src=\""+losowe[r]+"\"><\/script>\n")
</script>
No nie wiem, w sumie to ta tablica miałaby pomóc tylko w przypadku, gdyby pliki miały tę samą nazwę co funkcja w nich ale to głupie trochę:)
Lub po prostu losową niech tak dopisze, to powinno teoretycznie pomóc, ale tylko przy wczytywaniu strony.
legrooch-> ajax nie pozwala na dostęp do plików z innego serwera. Tzn. pozwala jak jest uruchomiony z lokalnego dysku i dodatkowo potwierdzisz że dajesz dostęp.
Przynajmniej ja miałem ten problem kiedyś (jak robiłem zczytywaczkę postów z gola:)

Regis [ ]
ajax nie pozwala na dostęp do plików z innego serwera.
To raczej cecha JS, niz Ajaxa. Przeciez ajax to tylko technika, a nie protokol, czy cos takiego...
maviozo [ Man with a movie camera ]
Jak zwał tak zwał:) masz rację, ale napisałem tak dla uproszczenia odpowiedzi.
uiouio1 [ Konsul ]
tak mam zamiar generowac ich duzo a wiec chce pobierac dopiero link po wylosowaniu, a losowac chce tlyko przy wczytywaniu strony, to ma byc reklama
maviozo [ Man with a movie camera ]
uiouio1->sprawdź, czy ta metoda z document.write Ci zadziała. Na lokalnym działa na bank, a to teoretycznie też powinno pomóc, bo plik fizycznie jest na serwerze natomiast jak ja chciałem zczytać posty z gola był większy problem:)
I czy w każdym z plików ta funkcja ma tę samą nazwę czy każda jest inna? W sumie to też da się obejść tylko potrzebujesz drugiej tablicy.
legrooch [ MPO Squad Member ]
<html>
<head>
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript" >
function write(filename)
‹
document.getElementById('ramka').src= filename
›
</script>
</head>
<body onload="write('script.js')">
<iframe id="ramka" style=""> </iframe>
<div id="kod"> </div>
</body>
</html>