Verlinkung klappt nicht
C.Kohle
- javascript
ich hab ein javascript eingebaut, d.h. wenn ich auf news klicke, dann öffnet sich ein submenu mit den jeweiligen artikeln zu news.
wenn ich jetzt diese Artikel im submenu verlinken will zeigt das programm mir diese links an, doch wenn ich darauf klicken will führt er sie nicht aus, sondern das submenu verschwindet einfach.
wäre cool, wenn ihr es schaffen würdet den Quellcode so zu verändern, dass man die Artikel im submenu verlinken kann und diese auch auf mausklick ausgeführt werden danke
hier ist mal der quellcode, sodass ihr euch das mal angucken könnt:
<html>
<head>
</head>
<BODY LINK="#000000" TEXT="000000" VLINK="#000000" ALINK="#000000" BGCOLOR="#ffffff">
<style type="text/css">
<!--
a:link { text-decoration:none; font-weight:bold; color:#000000; }
a:visited { text-decoration:none; font-weight:bold; color:#000000; }
a:hover { text-decoration:none; font-weight:bold; background-color:#ffffff; }
a:active { text-decoration:none; font-weight:bold; background-color:#ffffff; }
-->
</style>
<style>
.menu
{
position: absolute;
top:167;
z-index: 0;
}
.submenu
{
position: absolute;
top: 169;
z-index: 0;
visibility: hide;
visibility: hidden;
}
</style>
<script>
<!--
var old;
var memold;
var subold;
if(document.layers)
{
window.captureEvents(Event.MOUSEDOWN);
window.onmousedown=do_out;
} else
{
document.onmousedown=do_out;
}
function show_layer(x)
{
if(document.layers)
document.layers[x].visibility="show";
else
document.all[x].style.visibility="visible";
}
function hide_layer(x)
{
if(document.layers)
document.layers[x].visibility="hide";
else
document.all[x].style.visibility="hidden";
}
function do_menu(x)
{
if(!old)
old=memold;
if(old!=x)
{
show_layer(x);
old=x;
} else
old="";
}
function do_check(x)
{
if(old && old!=x)
{
hide_layer(old);
show_layer(x);
old=x;
}
do_submenu();
}
function do_out()
{
if(old)
hide_layer(old);
memold=old; old="";
do_submenu();
}
function do_submenu(x)
{
if(subold)
{
hide_layer(subold);
subold="";
}
if(x)
{
show_layer(x);
subold=x;
}
}
// -->
</script>
<body link="#000000" vlink="#000000" alink="#000000">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="972">
<tr>
<td width="972" height="150"> </td>
</tr>
</table>
<div id="m1" class="menu" style="position: absolute; left: 10; top: 166; width: 122,5; height: 18">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="122,5">
<tr>
<td><a href="javascript:do_menu('m1x')" onmouseover="do_check('m1x')">
<p align="center"><span style="font-weight: 400">
<font size="2" color="#000000" face="Verdana">NEWS</b></a> </font>
</span>
</td>
</tr>
</table>
</div>
<div id="m1x" class="submenu" style="position: absolute; left: 10; top: 183; width: 122,5; height: 34">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="122,5">
<tr>
<td bordercolor="#ffffff">
<p align="center"><font size="2" color="#000000" face="Verdana">
<span style="font-weight: 400">
Aktuell</span><br>
<a href="#"><font color="#000000"><span style="font-weight: 400">Geschichte</span></font></a> </font> </td>
</tr>
</table>
</div>
</a>
</body>
</html>
Ein bisschen Mühe von deiner Seite (du willst schließlich geholfen bekommen) wäre ganz fair gewesen. Der ganze CSS kram und das meiste HTML interssiert für dein Problem nicht.
:-(
if(document.layers)
{
window.captureEvents(Event.MOUSEDOWN);
window.onmousedown=do_out;
} else
{
document.onmousedown=do_out;
Du fängst hier alle Klicks ab, oder?
}
function show_layer(x)
{
if(document.layers)
document.layers[x].visibility="show";
else
document.all[x].style.visibility="visible";
}
Du programmierst übrigens nur für 4'er Browser. Mittlerweile sind einige schon bei der Version 7.
Schau dir das mal an: http://www.netzwelt.com/selfhtml/dhtml/index.htm
<td><a href="javascript:do_menu('m1x')" onmouseover="do_check('m1x')">
<p align="center"><span style="font-weight: 400">
<font size="2" color="#000000" face="Verdana">NEWS</b></a> </font></span>
</td>
</tr>
</table>
</div>
<div id="m1x" class="submenu" style="position: absolute; left: 10; top: 183; width: 122,5; height: 34">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="122,5">
<tr>
<td bordercolor="#ffffff">
<p align="center"><font size="2" color="#000000" face="Verdana">
<span style="font-weight: 400">
Aktuell</span><br>
<a href="#"><font color="#000000"><span style="font-weight: 400">Geschichte</span></font></a> </font> </td>
Ich sehe hir keine Links, die ausgeführt werden könnten.
Dein HTML code ist übrigens hochgradig ungültig. Schikc mal deine Seite durch den Validator http://validator.w3.org/.
Darüberhinaus mischt du CSS und HTML 3.2 was nicht sinnvoll ist.
Struppi.
danke das du dir mein problem angeguckt hast.
dies sit mein erster versuch und ich hab mir bsp. runtergelagen und die soweit angepasst dass die mir entsprechen, sodass ich zugeben muss ich hab keinen ahnung von dem ganzen version 4 oder css ....
aber nun u meiner eigentlichen frage, du fragst mich ob die klicks ander einen stelle abgefangen werden, ich muss sagen ich hab keine ahnung. desweiteren warum ungültig?
und links brauch man nur unter <a href"#"> einfügen, doch dies hab ich erstmal weggelassen um das Rohgerüst zu lassen:
<div id="m1x" class="submenu" style="position: absolute; left: 10; top: 183; width: 122,5; height: 34">
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="122,5">
<tr>
<td bordercolor="#ffffff">
<p align="center"><font size="2" color="#000000" face="Verdana">
<span style="font-weight: 400">
Aktuell</span><br>
!!! <a href="#"> !!!<font color="#000000"><span style="font-weight: 400">Geschichte</span></font></a> </font> </td>
also ich hab keinen plan wie es weitergehen soll, vielleicht fällt dir was ein???? bitte :)
Du hast geschrieben:... doch wenn ich darauf klicken will führt er sie nicht aus, sondern das submenu verschwindet einfach....
Da du aber keine Links die ausgeführt werden könnten hast passiert ja genau das was man erwarten sollte. (darüberhinaus würdest du aber auch mit document.onmousedown alle klicks abfangen).
Struppi.