Forum YouthCoders.net http://youthcoders.net/forum/ |
|
Podpinanie skryptu z zewnętrznego pliku *.js do strony http://youthcoders.net/forum/viewtopic.php?f=7&t=142 |
Strona 1 z 1 |
Autor: | Salvation [ 18 lip 2011, o 21:17 ] |
Tytuł: | Podpinanie skryptu z zewnętrznego pliku *.js do strony |
Witam. Od razu piszę, że jestem początkujący w języku JavaScript, dlatego wyskrobałem skrypt z kilku innych... Mam problem z podpięciem skryptu z zewnętrznego pliku *.js... Kiedy skrypt jest na nagłówku strony *.php to wszystko jest w porządku, godzina jest generowana i nawet sekundy lecą sprawnie, ale kiedy ten skrypt jest w osobnym pliku, to zaczynają się schody... A mianowicie: - dodaję w nagłówku ścieżkę do pliku - w <body> ją wywołuję, ale zamiast uzyskana poprzedniego rezultatu, wywala mi NaN:NaN:NaN... Wiecie może w czym jest problem? Z góry dzięki za odpowiedź start.php Kod: <html xml:lang="upl" lang="pl"> <head> <link rel="stylesheet" type="text/css" href="style.css"/> <title>Start</title> <meta http-equiv="content-type" content="text/html; charset=windows-1250" /> <script type="text/javascript" src="zegarek.js"></script> </head> <body> <div id="all"> <div id="center_left_down"> <span style="font-size:26px; color:#AFAFAF;">Godzina:</span> <br /> <span id="time"></span> <script type="text/javascript"> new showLocalTime("time", "server-php", 0, "short") </script> </div> </div> </body> </html> zegarek.js Kod: function showLocalTime(container, servermode, offsetMinutes, displayversion){
if (!document.getElementById || !document.getElementById(container)) return this.container=document.getElementById(container) this.displayversion=displayversion var servertimestring=(servermode=="server-php")? '<? print date("F d, Y H:i:s", time())?>' : (servermode=="server-ssi")? '<!--#config timefmt="%B %d, %Y %H:%M:%S"--><!--#echo var="DATE_LOCAL" -->' : '<%= Now() %>' this.localtime=this.serverdate=new Date(servertimestring) this.localtime.setTime(this.serverdate.getTime()+offsetMinutes*60*1000) //add user offset to server time this.updateTime() this.updateContainer() } showLocalTime.prototype.updateTime=function(){ var thisobj=this this.localtime.setSeconds(this.localtime.getSeconds()+1) setTimeout(function(){thisobj.updateTime()}, 1000) //update time every second } showLocalTime.prototype.updateContainer=function(){ var thisobj=this if (this.displayversion=="long") this.container.innerHTML=this.localtime.toLocaleString() else{ var hour=this.localtime.getHours() var minutes=this.localtime.getMinutes() var seconds=this.localtime.getSeconds() this.container.innerHTML=formatField(hour, 1)+":"+formatField(minutes)+":"+formatField(seconds)+"" } setTimeout(function(){thisobj.updateContainer()}, 1000) //update container every second } function formatField(num, isHour){ if (typeof isHour!="undefined"){ //if this is the hour field var hour=(num>24)? num-24 : num return (hour==0)? 24 : hour } return (num<=9)? "0"+num : num//if this is minute or sec field } |
Autor: | Salvation [ 18 lip 2011, o 21:19 ] |
Tytuł: | Re: Podpinanie skryptu z zewnętrznego pliku *.js do strony |
Aha, dodam jeszcze, że rezultat wrzucenia skryptu godzinowego w <head> znajdziecie na http://pdziubczynski.pl/start.php |
Autor: | yarpo [ 19 lip 2011, o 13:07 ] |
Tytuł: | Re: Podpinanie skryptu z zewnętrznego pliku *.js do strony |
W kodzie pliku js masz fragment innego języka niż JS: Kod: var servertimestring=(servermode=="server-php")? '<? print date("F d, Y H:i:s", time())?>' : (servermode=="server-ssi")? '<!--#config timefmt="%B %d, %Y %H:%M:%S"--><!--#echo var="DATE_LOCAL" -->' : '<%= Now() %>' Mam ogólnie wrażenie, że kod jest niepotrzebnie rozbudowany. ogólnie zastanowiłbym się nad jego przydatnością... |
Autor: | Salvation [ 19 lip 2011, o 14:12 ] |
Tytuł: | Re: Podpinanie skryptu z zewnętrznego pliku *.js do strony |
Czyli mogę tę linijkę usunąć? Bo ona generuje godzinę w php jakby nie zadziałał js... Ogólnie, to kod ten jest potrzebny do wyświetlenia poprawnej godziny z serwera... Wiem, może on jest tam niepotrzebny, ale na przyszłość będę wiedział jak podpiąć plik.js do index.php lub *.html No chyba, że nie wiecie w czym jest problem... |
Autor: | yarpo [ 20 lip 2011, o 08:34 ] |
Tytuł: | Re: Podpinanie skryptu z zewnętrznego pliku *.js do strony |
Jeśli chciałbyś po prostu zacząć wykorzystywać JS na swoich stronach, to polecam: http://youthcoders.net/html-css/kurs-ht ... -plik.html Więcej o JavaScript poczytasz: http://yarpo.pl http://youthcoders.net/javascript.html Powodzenia |
Strona 1 z 1 | Strefa czasowa: UTC [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |