Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
01.05.2008 20:05:54
Firefox ja Events |
|
|
Pole eriliselt valideerumisele vaeva näinud, kuid nüüd proovisin siis lihtsat lehte valideeruvaks teha, kuid oh häda FireFox keeldub enamustes Events lisadest onmouseover, onmousedown jne.
Näiteks lihtne kood
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- Creation date: 1.05.2008 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1257"/>
<title></title>
<meta name="description" content=""/>
<meta name="keywords" content=""/>
<meta name="author" content="Andrus"/>
<meta name="generator" content="AceHTML 5 Pro"/>
</head>
<body>
<div id="ruut" style="position:relative;width:100px;height:100px;background:#123ffa;">ergergregr</div>
<a href="#" onmousedown="ruut.style.width='200px';" onmouseup="ruut.style.width='100px';">Toks</a>
</body>
</html>
|
Validaator tunnistab selle õigeks, kuid FF ei toimi enam peale DOCTYPE lisamist. Kuidas saada need asjad valideeruvas lehes tööle? Teiste browseritega töötab.
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004
|
01.05.2008 20:28:24
|
|
|
andrusny, firebug võta abiks
ruut is not defined
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
01.05.2008 22:10:16
|
|
|
Ok. Otsisin netist, kuid ei osanud teda kuidagi nii defineerida, et tööle hakkaks, leidsin ainult hunniku samalaadseid probleeme. Ehk keegi hea inimene selgitab.
See teeb uue div elemendi, kuid ff keeldub ka seda liigutamast. Ja ma tahaks defineerida juba olemasolevat divi, mitte neid JS abil luua.
var newdiv = document.createElement('div');
var divIdName = 'ruut2';
newdiv.setAttribute('id',divIdName);
newdiv.style.width = "300px";
newdiv.style.height = "300px";
newdiv.style.left = "300px";
newdiv.style.top = "300px";
newdiv.style.position = "absolute";
newdiv.style.background = "#00C";
newdiv.style.border = "4px solid #000";
newdiv.innerHTML = 'Test Div';
document.body.appendChild(newdiv); |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
Tomv
Kreisi kasutaja

liitunud: 14.01.2007
|
01.05.2008 22:32:54
|
|
|
getElementById() ei ole proovinud kasutada, et ruutu kätte saada?
_________________ jah |
|
Kommentaarid: 20 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
19 |
|
tagasi üles |
|
 |
sander85
HV kasutaja

liitunud: 30.09.2007
|
01.05.2008 23:58:59
|
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- Creation date: 1.05.2008 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1257"/>
<title></title>
<meta name="description" content=""/>
<meta name="keywords" content=""/>
<meta name="author" content="Andrus"/>
<meta name="generator" content="AceHTML 5 Pro"/>
<script type="text/javascript"><!--
function changeWidth(id, nw)
{
var oid = id;
var new_width= nw + 'px';
var o = document.getElementById(oid);
o.style.width=new_width;
}
-->
</script>
</head>
<body>
<div id="ruut" style="position:relative;width:100px;height:100px;background:#123ffa;">ergergregr</div>
<a href="javascript:void(0);" onmousedown="changeWidth('ruut','200');" onmouseup="changeWidth('ruut','100');">Toks</a>
</body>
</html> |
_________________ 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 |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
02.05.2008 12:40:35
|
|
|
Tänud.
Kas siis igasugused sellised lihtsad muutmised ilma function kasutamata tuleb ära unustada. Ma mõtlen nagu ma algul tegin, et onmousedown alla otse mingi laius või midagi muud? Peab iga tühisemagi asja jaoks eraldi funktsiooni tegema?
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
nene
Kreisi kasutaja

liitunud: 20.03.2004
|
02.05.2008 19:55:55
|
|
|
andrusny kirjutas: |
Pole eriliselt valideerumisele vaeva näinud, kuid nüüd proovisin siis lihtsat lehte valideeruvaks teha [--]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> |
|
Ma ei tea kustkohast sa selle DOCTYPE'i kopeerinud oled, aga igatahes viitab su DOCYPE'i URL su oma masinas olevale failile DTD/xhtml1-transitional.dtd, mida sul ilmselt siiski enda arvutis/serveris pole. Ja sellisel juhul ei loe validaator su lehte ka valideeruvaks, sest ta üritaks leida su serverist toda faili, aga ei leiaks. (Su kood hetkel valideerus ilmselt seetõttu, et sa ei kasutanud valikut "Validate by URI").
Seega korrektne DOCTYPE sinu puhul oleks siiski:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
Aga tõelised mehed kasutavad Stricti. Transitional on lastele.
andrusny kirjutas: |
Kas siis igasugused sellised lihtsad muutmised ilma function kasutamata tuleb ära unustada. Ma mõtlen nagu ma algul tegin, et onmousedown alla otse mingi laius või midagi muud? Peab iga tühisemagi asja jaoks eraldi funktsiooni tegema? |
Üldiselt peetakse heaks stiiliks, et HTML-i, CSS-i ja JavaScripti ei kirjutata läibisegi ühte faili. HTML peaks defineerima lihtsalt lehekülje struktuuri (pealkirjad, lõigud, sektsioonid), CSS peaks ütlema, kuidas erinevad struktuurielemendid välja näevad ja JavaScript peaks määrama, kuidas nad käituvad. Ideaalis võiks võtta ära CSS-i ja/või JavaScripti ning lehekülg peaks endiselt kasutuskõlbulikuks jääma.
Näiteks sinu lehekülje puhul:
html:
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="et" lang="et"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1257" /> <link rel="stylesheet" type="text/css" href="styles.css" /> <script type="text/javascript" src="script.js"></script> </head> <div id="ruut">ergergregr </div> <p><a id="ruut-link" href="mingileht.html">Toks </a></p> </body> </html>
|
HTML-is siis seega lihtsalt viited CSS-i ja JavaScripti failidele.
Et ka CSS ja JavaScript omavahel lahus hoida, siis defineerisin CSS-i klassi mousedown:
css:
|
#ruut { position: relative; width: 100px; height: 100px; background: #123ffa; } #ruut.mousedown { width: 200px; }
|
JavaScripti fail on kirjutatud nii, et kood käivitub lehekülje laadimisel, otsitakse üles dokumendis olev link ja määratakse selle onmousedown, onmouseup ja onclick sündmused (viimane on tarvilik seetõttu, et hiireklahvi vabastamisel ei mindaks lehele mingileht.html):
javascript:
|
window.onload = function() { var link = document.getElementById("ruut-link"); var ruut = document.getElementById("ruut"); link.onmousedown = function() { ruut.className = "mousedown"; }; link.onmouseup = function() { ruut.className = ""; }; link.onclick = function() { return false; }; };
|
See kõik võib tunduda liialdamisena, kuid ma ei arva nii. Isegi kui su lehekülg on päris tilluke, on ikkagi parem hoida HTML, CSS ja JavaScript eraldi failides. Eriti kui su tekstiredaktor ei toeta HTML-i, CSS-i ja JavaScripti läbisegi koodi esiletõstmist (mina ei tea ühtegi, mis toetaks style="" või onclick="" atribuudi sees oleva koodi värvimist). Lisaks sunnib nende eraldi hoidmine sind kirjutama paremat koodi (nii HTML-i, CSS-i kui JavaScripti).
|
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
02.05.2008 21:51:03
|
|
|
AceHTML PRO 5 kasutan ja minu meelest päris hästi värvib. Soovitan proovida, pole ise paremat leidnud.
Demo Pilt
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
nene
Kreisi kasutaja

liitunud: 20.03.2004
|
03.05.2008 09:09:06
|
|
|
Tõesti, pole paha. Panen kõrva taha, et katsetada millagi kui ma Windowsi taha satun.
|
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
 |
|