Autor verwandt: http://www.lemongtree.com
Sie können CSS-Attributselektoren verwenden, um Link-Stile selektiv zu steuern, indem Sie beispielsweise allen externen Links ein kleines Symbol hinzufügen, um sie als externe Links zu kennzeichnen.
Die Verwendung von CSS hat jedoch Nachteile:
1. Unterstützt nur Browser wie Firefox, die Webstandards gut unterstützen.
2. Es können nur Links beurteilt werden, keine Ankerpunkte oder Javascript. Wenn Sie auf <a href="javascript:void(0);"> stoßen, können Sie nichts tun.
Dies kann in Kombination mit js erfolgen. Schreiben Sie zunächst einen Stil:
a.other:link,a.other:besucht,a.other:aktiv
{
Hintergrund:url("external.gif") no-repeat oben rechts;
padding-right:15px;
}
Schreiben Sie ein weiteres JS, aber das JS muss die oben erwähnte Vielfalt an Links wie Javascript, Ankerpunkte usw. berücksichtigen. Wenn es sich um einen Bildlink handelt, wenden Sie keinen Stil an.
<script type="text/javascript">
window.onload = function()
{
var aList = document.getElementsByTagName('a');
var iCount = aList.length;
for(var i = 0;i<iCount;i++)
{
if(!chkMyLink(aList[i].href,aList[i].innerHTML))
{
aList[i].className ='other';
}
}
}
//s ist die URL des Links, innerhtml ist der Linktext
Funktion chkMyLink(s,innerhtml)
{
if(innerhtml.replace( /^s*/,"").match(/^<img/gi)) return true;
var reg = /^http:///gi;
if(s.match(reg))
{
reg = /^http://www.lemongtree.com/gi;
if(s.match(reg))
{
return true;
}
anders
{
return false;
}
}
return true;
}
</script>
Jetzt können Sie den Effekt sehen.