Starší komentáře ke článku: Slabikář JavaScriptu - události myši a objekt Event

Zpět na článek | Úvodní stránka Interval.cz

Avatar

Autor komentáře: Petr Novak

Datum vložení: 16.4.2002 23:32:08

Dobry clanek, ale co takhle uzavirat tag <p> ?
Myslel jsem si ze je to preklep, ale bohuzel se to opakuje, ale jinak fakt dobry :)

Avatar

Autor komentáře: scorpi

Datum vložení: 18.4.2002 0:29:39

No me se clanek taky libil, az na to, ze autor neuvadi souvislosti - kde je mozne objekt event a jeho vlastnosti pouzit? Objekt event je soucasti DOM Level 2, podporovan je v IE od verze 4, ovsem zrovna vlastnost fromElement je proprietalni, IE 5+ only...cimz priklady v Mozille nefunguji a pokud nekaslu na non-IE prohlizece (coz by melo byt normalni), tak bych tuto informaci povazoval za docela podstatnou...

Avatar

Autor komentáře: David Morkes

Datum vložení: 18.4.2002 9:14:22

Máte pravdu - informaci o tom, že všechny skripty jsou optimalizovány pro IE 5.0 a vyšší jsem uvedl v prvním dílu Slabikáře. Tahle vlastnost pokračuje a bude pokračovat i dál, proto ji vždy znovu už nezdůrazňuji ...

Avatar

Autor komentáře: scorpi

Datum vložení: 18.4.2002 9:58:11

V tom pripade OK, priznam se, ze prvni dil slabikare jsem necetl :-).
Ale kdybych ho byl cetl, asi bych tam napsal, proc jen pro IE5+, kdyz tu mame standard ECMA a W3C DOM a dle meho nazoru by bylo lepsi ctenarum rict, co JE standardni a co je jen nepr. pro IE5...Nejsem proti vyuzivani ruznych proprietalni ficurek, ktere umi jen urcity prohlizec (typicky IE), ale myslim si, ze doba optimalizace jen pro jeden prohlizec pominula (diky tomu, ze soucasne prohlizece implementuji standardy) a tak mi to prijde trosku "nevychovne"... Vzdyt by se stacilo omezit na soucasne moderni prohlizece (hlavne IE5+ a Mozillu) a rozlisovat standardy a pouzeProTentoProhlizec() :-) a nechat volbu na ctenarich...
Neni to nic proti Vasim clankum, ktere jsou jiste na dobre urovni, spis obecnejsi zalezitost...

Avatar

Autor komentáře: Ritchie

Datum vložení: 19.4.2002 19:46:12

Brzy zacnu byt na slovo "optimalizovat" alergicky :-|. Stranky by meli byt tvoreny podle standardu w3c a pokud uz chcete pridat neco navic, nesmi tim byt ovlivnena funkcnost a zobrazovani. Mimo jine me prekvapuje, ze vsichni "optimalizuji" pro IE, protoze takovy buggy prohlizec se jen tak nevidi :-(.

Avatar

Autor komentáře: VladiczeK

Datum vložení: 6.9.2002 18:43:30

Měl bych jeden dotaz ohledně akce onmouseover. V tabulkách se dá použít tohoto zápisu :

class="xx" onmouseover="javascript:style.background='barva1'" onmouseout="javascript:style.background='barva2'"

pro změnu pozadí např. buňky. Já však mám pod tabulkou obrázek a potřeboval bych, aby podklad jednotlivé buňky pouze ztmavnul. (podobně, jako když obrázek v IE označíte) Nevíte někdo, jak tento porblém vyřešit ?

Předem děkuji

Avatar

Autor komentáře: David Morkes

Datum vložení: 9.9.2002 13:35:33

U normálního obrázku, by bylo možné jej prostě nahradit za tmavší:
onMouseOver="document.images.item(0).src='2.gif'"
onMouseOut="document.images.item(0).src='1.gif'"
Případně, pokud by vám nevadilo, že to bude chodit jen v MSIE, použít alpha filter, pomocí něhož si můžete nastavit i rychlost ztmavnutí.
Obrázek použitý pomocí url ve vlastnosti backgroundImage nebo background však není součástí kolekce images, a proto tato technika použít nejde.
Objevil jsem možnost, která však bude fungovat jen v MSIE. Netscape celý kód ignoruje, ale nehlásí chyby. Jako návod zkuste tohle:

<html>
<head>
<title>Styly</title>
<LINK href="styles2.css" title="compact" rel="stylesheet" type="text/css" id="0">
<LINK href="styles.css" title="medium" rel="alternate stylesheet" type="text/css" id="1">

<script language="JavaScript">
function Styly (id) {
var kolekce=document.getElementsByTagName("LINK")
for (i=0;i<kolekce.length;i++) {
kolekce[i].rel="alternate stylesheet"
}
document.getElementById(id).rel="stylesheet"
}
</script>
</head>
<body>

<table><tr>
<td onMouseOut="Styly(0)" onMouseOver="Styly(1)">text</td></tr></table>
</body>
</html>

Styly styles.css a styles2.css si musíte nadefinovat sám včetně podkladových obrázků. Doporučuji také na začátku všechny obrázky načíst do cache, aby se uživateli, který navštíví stránku poprvé, obrázky nestahovaly až když na buňku tabulky ukáže myší.
Na nic jednoduššího jsem nepřišel ... přeji příjemnou zábavu :-)

Avatar

Autor komentáře: Simon

Datum vložení: 6.5.2003 20:00:23

Prosim o radu.
Pisu svuj prvni js spousteni rolloveru odkazem. Potreboval bych aby se menily dva obrazky. Druhy obrazek( onmouseover) ma ale jinou velikost. Prosim kam mam zapsat rozmery toho obrazku, pripadne jak se to resi. Nikde jsem se to nedocetl, nebo jsem to prehledl.

Dekuji Simon

Avatar

Autor komentáře: mamba

Datum vložení: 25.2.2008 12:40:55

Dobrý den, hledal jsem na googlu nějakou metodu objektu event, která by mi vrátila element, na kterém byla event generována... Našel jsem tedy event.srcElement. Jenže to funguje pouze v IE6+ a v Opeře, ve FF nikoliv :-( Jde o tohle: mám prvek formuláře a jako reakci na událost (není důležité jakou) mám definovanou ve scriptu: element.onload = funkce; function funkce(e) { if(e == null) { e = window.event; } alert(e.srcElement.name); } Tenhle kód ale funguje pouze jak jsem uvedl. Já ale potřebuji aby to šlo i ve FF... Můžete mi někdo poradit, prosím?

Zpět na článek | Úvodní stránka Interval.cz