Autor Zpráva
Dukolm
Profil *
Potřeboval bych funkci která zjistí id elementu ze kterého byla zavolána

<script type="text/javascript">
function schovej() {
  
}
</script>  

<div id="nahled" onclick="javascript:schovej();" >obsah</div>

Radek9
Profil
<script type="text/javascript">
function schovej(el){
  alert(el.id);
}
</script>  
<div id="nahled" onclick="schovej(this);">obsah</div>
Chamurappi
Profil
Reaguji na Dukolma:
Doufám, že to ídéčko potřebuješ k něčemu chytřejšímu, než aby sis to, co bylo v this, zase zpětně dohledal pomocí document.getElementById :-)
Dukolm
Profil *
jedna se o to že v jedny funkci potřebu jen změnit css vlastnost toho samého elementu v druhy vlastnost jiného takže podle id se rozhoduje kterého.

jestli se to dělá jinak rad si nechám poradit?
Witiko
Profil
Dukolm
<script type="text/javascript">
Element.prototype.schovej = function() {
  alert(this.id);
}
</script>  

<div id="nahled" onclick="this.schovej();">obsah</div>

Ale neočekávej podporu objektu Element ve všech prohlížečích. Jo a javascript: se používá jen v adresách jako pseudo-protokol.
Chamurappi
Profil
Reaguji na Witika:
Tak tohle bych mu rozhodně a důrazně nedoporučoval.


Reaguji na Dukolma:
To je tak obecný popis, že na něj těžko jde dát jasná odpověď, zda je zvolený popstup optimální. Nejspíš je. Fungovat bude.
Witiko
Profil
Chamurappi:
Já mu to nedoporučuju, dávám to sem jen pro úplnost možných řešení v tématu a upozorňuji na to, že toto řešení je na některé prohlížeče příliš inovativní. :)
Chamurappi
Profil
Reaguji na Witika:
Mně nepřipadá příliš inovativní, ale příliš … slušně řečeno podivné. Nedoporučoval bych ho, ani kdyby měl jistou stoprocentní podporu. Očividně nemá jít o funkci, která by měla být pohodlně dostupná na úplně všech elementech.
Witiko
Profil
Chamurappi:
V tomhle případě souhlasím, ale kupříkladu u funkce na skrývání elementů vypadá element.hide(); lépe, než hide(element);. Nicméně ty problémy za to zatím mimo framework s vlastní nadstavbovou úrovní nad základním DOM nestojí.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: