Hallo,
Also ich habe ein Problem undzwar möchte ich das ein li und ein a beide mit onclick die selbe Funktion ausführen doch dies geht nicht wenn ich es bei dem li rein tu geht es bei dem a nicht...
Also grundsätzlich geht das schon ohne probleme, aber eigentlich macht man das so dass man mit CSS das <a> so groß macht, dass es das ganze <li> ausfüllt, so dass man dazu gar kein JavaScript mehr braucht. Grundsätzlich reicht es dem <a> display: block; zu geben, siehe dazu dieses Beispiel bei Listmatic.
Ansonsten würde ich es so machen:
<ul id="ul1">
<li onclick="goTo(this)"><a href="http://google.com">Google</a></li>
</ul>
<script>
[code lang=javascript] function goTo(obj) {
var url = obj.getElementsByTagName("a")[0].href;
document.window.location.href = url;
}
</script>[/code]
Und am besten auch noch das onclick raus aus dem HTML und in die externe JavaScript Datei vielleicht mit jQuery (einer bibliothek die einiges vereinfacht) oder so:
$(function() {
$("#ul1 > li").click(function(li) {
var url = $(li).find("a").attr("href");
document.window.location.href = url;
});
});
/Jeena