Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
17.12.2007 19:18:28
validaator annab javascripti peale errori |
|
|
Valideerimise käigus andis javascripti rea peale errori ja ma ei saa veateatest aru, mismoodi ma selle ära saan parandada?
tsitaat: |
...end tag for element "A" which is not open.
document.write(user + '@' + site + '</a>');
The Validator found an end tag for the above element, but that element is not currently open. This is often caused by a leftover end tag from an element that was removed during editing, or by an implicitly closed element (if you have an error related to an element being used where it is not allowed, this is almost certainly the case). In the latter case this error will disappear as soon as you fix the original problem.
If this error occurred in a script section of your document, you should probably read this FAQ entry. |
Mul on kasutatud javascripti:
javascript:
|
<script language="JavaScript" type="text/JavaScript"> // kaitseb sind E-mail robotite eest user = 'nimi; site = 'server.ee'; document.write('<a href=\"mailto:' + user + '@' + site + '\">'); document.write(user + '@' + site + '</a>'); </script>
|
Ülejäänud leht valideerub (4.01 Transitional), ainult see javascripti rida.
|
|
tagasi üles |
|
|
infidel
HV kasutaja
liitunud: 31.01.2004
|
17.12.2007 19:24:20
|
|
|
Kas mitte selle user = 'nimi; asemel ei peaks olema user = 'nimi'; ?
s.t. üks ülakoma lisaks.
|
|
Kommentaarid: 35 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
34 |
|
tagasi üles |
|
|
Telempe
Kreisi kasutaja
liitunud: 02.11.2002
|
17.12.2007 19:53:06
|
|
|
Pane skript eraldi faili.
_________________ ORLY? I hardly know her! |
|
Kommentaarid: 22 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
21 |
|
tagasi üles |
|
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
18.12.2007 12:18:51
|
|
|
Mul oligi eraldi html failis niimoodi (ilma doctype, body-ta)
kontaktandmed.html
html:
|
<script language="JavaScript" type="text/JavaScript"> user = 'nimi'; site = 'server.ee'; document.write(' <a href=\"mailto:' + user + '@' + site + '\">'); document.write(user + '@' + site + '</a>'); </script>
|
ja php faili tõin selle niimoodi sisse:
html:
|
<?php include('kontaktandmed.html'); ?> </div>
|
Kas peaks kuidagi teisiti tegema?
Telempe kirjutas: |
Pane skript eraldi faili. |
ülakomaga on nüüd korras, aga pahandab ikka selle user + '@' + site + '</a>' rea peale
infidel kirjutas: |
Kas mitte selle user = 'nimi; asemel ei peaks olema user = 'nimi'; ?
s.t. üks ülakoma lisaks. |
|
|
tagasi üles |
|
|
Valdars
HV veteran
liitunud: 22.02.2003
|
18.12.2007 12:30:25
|
|
|
Pane kogu script tagide vahel olev kood <!-- --> vahele. Siis ei proovi validaator teha midagi, mida ta tegema ei peaks, ehk javascripti koodi valideerida.
Plondiin kirjutas: |
Kas peaks kuidagi teisiti tegema?
Telempe kirjutas: |
Pane skript eraldi faili. |
|
Paned kogu javascripti *.js faili ja lisad selle siis <script language="JavaScript" type="text/JavaScript" src="eraldikoodifail.js">
|
|
Kommentaarid: 47 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
44 |
|
tagasi üles |
|
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
18.12.2007 13:10:30
|
|
|
Nüüd ei näita e-posti aadressi index.php lehel
kontaktandmed.js
<script language="JavaScript" type="text/JavaScript">
<!--
user = 'nimi';
site = 'server.ee';
document.write('<a href=\"mailto:' + user + '@' + site + '\">');
document.write(user + '@' + site + '</a>');
-->
</script> |
index.php
<div class="kontakt">
Kontakt<br>
<script language="JavaScript" type="text/JavaScript" src="kontaktandmed.js"></script>
<br>
üldtelefon <br>
faks
</div> |
Peale selle annab doctype peale mingi teate:
The detected DOCTYPE Declaration "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">" has been suppressed and the DOCTYPE for "HTML 4.01 Transitional" inserted instead, but even if no errors are shown below the document will not be Valid until you update it to reflect this new DOCTYPE.
rvasi alul, et on seotud javascriptiga, kuid javascripti äravõtmisel ikka sama teade. Mis ma tegema pean?
Valdars kirjutas: |
Pane kogu script tagide vahel olev kood <!-- --> vahele. Siis ei proovi validaator teha midagi, mida ta tegema ei peaks, ehk javascripti koodi valideerida.
Plondiin kirjutas: |
Kas peaks kuidagi teisiti tegema?
Telempe kirjutas: |
Pane skript eraldi faili. |
|
Paned kogu javascripti *.js faili ja lisad selle siis <script language="JavaScript" type="text/JavaScript" src="eraldikoodifail.js"> |
|
|
tagasi üles |
|
|
tanzanite
HV kasutaja
liitunud: 13.05.2006
|
18.12.2007 15:07:30
|
|
|
Valdars kirjutas: |
Pane kogu script tagide vahel olev kood <!-- --> vahele. Siis ei proovi validaator teha midagi, mida ta tegema ei peaks, ehk javascripti koodi valideerida. |
cdata tag oleks parem.
|
|
tagasi üles |
|
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
18.12.2007 17:03:22
|
|
|
mismoodi see käib?
tanzanite kirjutas: |
Valdars kirjutas: |
Pane kogu script tagide vahel olev kood <!-- --> vahele. Siis ei proovi validaator teha midagi, mida ta tegema ei peaks, ehk javascripti koodi valideerida. |
cdata tag oleks parem. |
|
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
18.12.2007 19:33:57
|
|
|
eraldi .js failis ei käi midagi seal ümber, .js fail ei sisalda mitte midagi muud peale puhta javascripti
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
Telempe
Kreisi kasutaja
liitunud: 02.11.2002
|
18.12.2007 20:39:06
|
|
|
kontaktandmed.js kirjutas: |
javascript:
|
user = 'nimi'; site = 'server.ee'; document.write('<a href=\"mailto:' + user + '@' + site + '\">'); document.write(user + '@' + site + '</a>');
|
|
JA
index.php kirjutas: |
html:
|
<script language="JavaScript" type="text/JavaScript" src="kontaktandmed.js"></script> faks </div>
|
|
VÕI
index.php kirjutas: |
html:
|
<script language="JavaScript" type="text/JavaScript"> <![CDATA[ user = 'nimi'; site = 'server.ee'; document.write('<a href=\"mailto:' + user + '@' + site + '\">'); document.write(user + '@' + site + '</a>'); ]]> </script> <br> üldtelefon <br> faks </div>
|
|
_________________ ORLY? I hardly know her! |
|
Kommentaarid: 22 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
21 |
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
18.12.2007 22:32:56
|
|
|
ise valiks esimese
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
nn3_
HV kasutaja
liitunud: 13.09.2003
|
19.12.2007 13:14:44
|
|
|
Nii väikest JavaScripti ei ole kasulik eraldi faili panna, kuna JS faili laadimiseks tehakse eraldi päring serverile. Kui muude komponentide lugemiseks oskavad modernsed brauserid teha päringuid paralleelselt (standardi järgi ja vaikimisi 2 korraga), siis JS faili laadimise ajal aga kõik muud päringud (piltide laadimine jne) pannakse seisma (et ei tekiks JS vigu). Seega juhul kui server/ühendus uimab, siis brauser ootab JS faili järgi, enne kui saab muid lehe komponente edasi laadida, siit võib tulla oluline vahe lehe esitamiskiiruses.
Eraldi JS faili on mõistlik panna skrpitid a) mis on suuremahulised ja b) mida kasutab mitmel leheküljel - näiteks saab brauser need puhvrisse lugeda, vähem päringuid. JS failid/skriptid tuleks lisada/käivitada lehekülje lõpus (kindlasti mitte HEAD osas), et brauser loeks muud komponendid varem ära.
|
|
Kommentaarid: 4 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
0 :: |
3 |
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
19.12.2007 13:25:18
|
|
|
ehk siis tuleks see emaili koht ära tähistada ning siis onload triggeriga body elemendil panna soovitud funktsioon käima
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
19.12.2007 15:46:22
|
|
|
Esimene variant (eraldi failides) näitas lehel e-posti aadressi ja validaator ei andnud errorit
Teine variant (kus js on index.php sees) ei näidanud lehel e-posti aadressi ja validaator andis ikka errori- end tag for element "A" which is not open. document.write(user + '@' + site + '</a>');
Kui selgub, et pole kasulik seda väikest js asja eraldi failis hoida (seni oli see ainus töötav variant), siis kuidas saab
mikk36 kirjutas: |
emaili koht ära tähistada ning siis onload triggeriga body elemendil panna soovitud funktsioon käima |
?
|
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
19.12.2007 16:00:42
|
|
|
no kui korra on juba js fail alla laetud, siis edaspidi teeb brauser ainult päringu serverile et kas js fail on muutunud (mis on väga kiire päring)
seega minupoolest võib ka see pisike script asuda eraldi failis
et onload'is see värk teha tuleks anda sellele kohale, kuhu tahad emaili saada, anda mingi name või id (vastavalt mis doctype on ja mis rohkem meeldib)
onloadiga tõmbad siis oma soovitud funktsiooni tööle ja see lisab vastavasse kohta siis selle emailiaadressi
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
Plondiin
HV kasutaja
liitunud: 13.12.2001
|
20.12.2007 11:50:21
|
|
|
Kuidas see täpsemalt välja näeb?
mikk36 kirjutas: |
no kui korra on juba js fail alla laetud, siis edaspidi teeb brauser ainult päringu serverile et kas js fail on muutunud (mis on väga kiire päring)
seega minupoolest võib ka see pisike script asuda eraldi failis
et onload'is see värk teha tuleks anda sellele kohale, kuhu tahad emaili saada, anda mingi name või id (vastavalt mis doctype on ja mis rohkem meeldib)
onloadiga tõmbad siis oma soovitud funktsiooni tööle ja see lisab vastavasse kohta siis selle emailiaadressi |
|
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
20.12.2007 14:47:06
|
|
|
paned sinna kohta html'is, kus tahad seda emaili panna, <span> elemendi, millele lisad id
siis onload'iga tõmbad näiteks käima funktsiooni create_email_address() (mis asub javascript failis, mille sa laed <head>'is ilusasti <script> tag'iga sisse)
javascriptis siis see create_email_address otsib üles elemendi, millel on id väärtusega, mis sa alguses sellele span'ile omistasid ja lisab sinna siis sinu soovitud teksti (lisamismeetod vali ise, google aitab)
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
duplex
Kreisi kasutaja
liitunud: 06.10.2002
|
15.04.2008 11:39:41
|
|
|
Kas natsa haigeks ei kipu see valideerimise teema minema? Mingi js pärast selline jama ja elu raiskamine... paar rida koodi panna eraldi faili validatori pärast ... Kas see siis muudab koodi? Sisse loeb internetilehitseja erinevalt validatorist ju samamoodi nagu kood oleks script tagide vahel! Isegi dreamweaver ei tee 100% valideeruvat koodi. Näiteks minu vana DW paneb embed elemendi flash koodile sisse W3C ei toeta seda Netscape tagi ja loeb seda veaks. Samas mõni vana lehitseja ei pruugigi ilma selleta flashi näidata!
|
|
Kommentaarid: 65 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
63 |
|
tagasi üles |
|
|
mikk36
HV Guru
liitunud: 21.02.2004
|
15.04.2008 12:01:04
|
|
|
LOCAL, local, dreamweaver polegi mingi margi näitaja ju
saaks aru et sul oleks hullult keerukas seda javascripti tekitada aga ei, väga lihtsaks tehtud, vaid sinu enda põikpäisus vastu seista standardile
vana lehitseja ei olegi mõeldud netis käimiseks
kui tootjapoolne tugi ära kaob, siis mind ei huvita enam see brauser
hetkel on veel IE6'l tugi olemas microsofti poolt seega teen nii et ka tollega oleks väljanägemine ok
kuna 5.5 ei ole enam toetatud MS'i poolt, siis on savi mul täiesti
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
|
sander85
HV kasutaja
liitunud: 30.09.2007
|
15.04.2008 12:07:00
|
|
|
LOCAL kirjutas: |
Kas natsa haigeks ei kipu see valideerimise teema minema? Mingi js pärast selline jama ja elu raiskamine... paar rida koodi panna eraldi faili validatori pärast ... Kas see siis muudab koodi? Sisse loeb internetilehitseja erinevalt validatorist ju samamoodi nagu kood oleks script tagide vahel! Isegi dreamweaver ei tee 100% valideeruvat koodi. Näiteks minu vana DW paneb embed elemendi flash koodile sisse W3C ei toeta seda Netscape tagi ja loeb seda veaks. Samas mõni vana lehitseja ei pruugigi ilma selleta flashi näidata! |
selle jaoks on jupp javascripti, mis kuvab sinu flashi nii, et esiteks oleks ta ka IE7-mes kohe kasutatav ilma eelneva aktiveerimiseta ja teiseks toetab ta valideerumist
http://code.google.com/p/swfobject/
_________________ Think of how stupid the average person is, and realize half of them are stupider than that.
-- G. Carlin |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
|
|