Hallo Matze,
Gibt es eine Möglichkeit in bestimmten Fällen einen Link zu deaktivieren?
Eigentlich eine schoene Anwendung fuer DOM - und siehe da, im Mozilla funktioniert es auch wie gewuenscht. Kleine Datei zum Testen:
<html><head><title></title></head>
<script type="text/javascript">
function deaktivieren() {
document.getElementById("Testlink").removeAttributeNode(document.getElementById("Testlink").attributes[1]);
}
function aktivieren() {
var href = document.createAttribute("href");
href.nodeValue = "index.htm";
document.getElementById("Testlink").setAttributeNode(href);
}
</script>
<body>
<p><a id="Testlink" href="index.htm">Test</a></p>
<p>
<a href="javascript:deaktivieren()">deaktivieren</a><br>
<a href="javascript:aktivieren()">aktivieren</a><br>
</p>
</body>
</html>
Leider nicht in IE6 und Opera. Beim IE ist allerdings alles kein Problem, da kann man sich mit dem all-Objekt und der Eigenschaft outerHTML behelfen.
Oder man versucht es ueber die HTML-Elementobjekte (wieder DOM, aber naeher an HTML). Die folgende Variante funktioniert sowohl mit Mozilla als auch mit IE:
<html><head><title></title></head>
<script type="text/javascript">
function deaktivieren() {
document.getElementById("Testlink").href="#";
document.getElementById("Testlink").style.textDecoration="none";
}
function aktivieren() {
document.getElementById("Testlink").href="index.htm";
document.getElementById("Testlink").style.textDecoration="underline";
}
</script>
<body>
<p><a id="Testlink" href="index.htm">Test</a></p>
<p>
<a href="javascript:deaktivieren()">deaktivieren</a><br>
<a href="javascript:aktivieren()">aktivieren</a><br>
</p>
</body>
</html>
viele Gruesse
Stefan Muenz