href link disable / deaktivieren

Status
Nicht offen für weitere Antworten.

djtoobee

Grünschnabel
Hi Forum,

Bin ein Anfänger im Bereich html-coding.
Gibt es eine Möglichkeit, in meiner Navigationsleiste
den jeweils aktiven Link sichtbar zu deaktivieren (sprich: nicht nur
"return false")?

(Evtl. ohne ,dass der (Navi)Frame neu geladen werden muss?
 
Was verstehst du denn genau unter "sichtbar deaktivieren"?
Und auf welches Ereignis hin sollte dies passieren?

Mit Javascript kannst du das href-Attribut ändern, worüber ein "deaktivieren" möglich ist. Du kannst dies bspw. tun, wenn die Linkadresse identisch ist mit der URL in irgendeinem Fenster/Frame.

Auch das Aussehen des Links kannst du per Javascript ändern, wie du willst.
 
Zuletzt bearbeitet:
Vielen Dank für für die schnelle Antwort.

Also im Grunde meine ich, wenn ich auf meiner Homepage via Navibar
die Seiten innerhalb meiner HP wechsele, dass der Link zur jeweils
aktiven Seite gesperrt/deaktiviert/disabled wird, so dass der User nicht
nochmal dieselbe Seite aufrufen kann (um evtl. vermeidbare Ladezeiten zu vermeiden).

Mit sichtbar meinte ich, dass der Cursor bei onMouseover nicht in die "hand" wechselt.

Habe schon eine onMouseOver-Funktion, vielleicht kann man das mit
verwenden?!

Füge mal hier den Code ein.

Code:
<script type="text/javascript">
<!--
objActive   =false;

strImgPath  ='images/';

strImgType  ='.gif';

function linkoptics(objImg,strSrc,intEvt)
{

if(intEvt==1)
    {
    objImg.name=strSrc;
    }

if(intEvt==2)
    {
    if(objActive!=objImg)
        {
        objActive.src=strImgPath+objActive.name+strImgType;
        }
    objActive=objImg;
    }

if(objActive!=objImg||intEvt==2)
    {
    objImg.src=strImgPath+strSrc+strImgType;
    }
}

function change(url1,url2) 
  { 
    parent.center.location = url1; 
    parent.top_left.location = url2; 
  } 
//--> 
</script>

</head>

<body bgcolor="ffffff" topmargin="15" leftmargin="0">
<table border="0" cellpadding="0" cellspacing="0" ><tr>
<td valign="top">

<td></td><a href="#"><img src="images/info_normal.gif" border="1"
onMouseOver="linkoptics(this,'info_over',0);"
onMouseOut="linkoptics(this,'info_normal',1);"
onClick="linkoptics(this,'info_press',2);change('center_info.html','top_left_info.html');" width="117" height="13" border="1" hspace="5" vspace="2">
</a>
<td></td><a href="#"><img src="images/guest_normal.gif" border="1"
onMouseOver="linkoptics(this,'guest_over',0);"
onMouseOut="linkoptics(this,'guest_normal',1);"
onClick="linkoptics(this,'guest_press',2);change('center_guests.html','top_left_guests.html');" width="117" height="13" border="1" hspace="5" vspace="2">
</a>
<td></td><a href="#"><img src="images/links_normal.gif" border="1"
onMouseOver="linkoptics(this,'links_over',0);"
onMouseOut="linkoptics(this,'links_normal',1);"
onClick="linkoptics(this,'links_press',2);change('center_links.html','top_left_links.html');" width="117" height="13" border="1" hspace="5" vspace="2">
</a>
<td></td><a href="#"><img src="images/contact_normal.gif" border="1"
onMouseOver="linkoptics(this,'contact_over',0);"
onMouseOut="linkoptics(this,'contact_normal',1);"
onClick="linkoptics(this,'contact_press',2);change('center_contact.html','top_left_contact.html');" width="117" height="13" border="1" hspace="5" vspace="2">
</a>
<td></td><a href="#"><img src="images/index_normal.gif" border="1"
onMouseOver="linkoptics(this,'index_over',0);"
onMouseOut="linkoptics(this,'index_normal',1);"
onClick="linkoptics(this,'index_press',2);change('center_home.html','top_left_home.html');" width="117" height="13" border="1" hspace="5" vspace="2">
</a>

</tr>
</table>
 
Das geht z.B. so:
Code:
<script type="text/javascript">
<!--
function link_weg(obj)
{
if (document.getElementById)
    {
    obj.parentNode.style.cursor = 'default';
    obj.onclick = 'return false;';
    }
}
//-->
</script>
..im <img> musst du dann den "onclick" erweitern um
Code:
link_weg(this)
...das ändert den Cursor des Elternelements des <img>...also des Links, und ersetzt sämtliche bei onclick notierten Funktionsaufrufe durch 'return false'

Wozu die Links aber überhaupt da sein sollen, kann ich mir jetzt nicht erklären....wenn es nur wegen der Hand ist, die kannst du auch per CSS auf das <img> zaubern... nen anderen Sinn seh ich bei den Links nicht.
 
Zuletzt bearbeitet:
Vielen Dank, der Ansatz ist ja richtig.

Und das gibt jetzt vielleicht auch mehr Verständnis. Natürlich soll bei
onClick auf einen anderen Link der evtl. schon deaktivierte wieder aktiviert werden.
Sozusagen, dass immer nur der Link zur jeweils gewählten Seite deaktiviert ist.
 
Nö..da gibts kein Pendant.

Du kannst höchstens alle Links der Seite durchgehen, und jeden Link, der nicht "this" ist "aktivieren".
Mit der Hand ist das kein Problem.... den Funktionsaufruf wiederherzustellen dürfte da ungleich schwieriger werden, da der immer variiert, und beim deaktivieren komplett entfernt wird.
 
Und wie aktiviere ich den wieder.
Ein return true wird ja wohl nicht reichen, oder?

Und die Hand ist dann
Code:
parentNode.style.cursor = 'hand' : 'pointer';
?
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück