Ver Mensaje Individual
  #8 (permalink)  
Antiguo 03/09/2005, 13:03
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Lo has clavao Javier!

Bueno, ya lo tenemos en las faq. FAQ#227 (cuántos hay ya no? Parece una biblioteca mas que un FAQ xD).

Pongo el codigo final tambien aqui:
Código PHP:
<html>

<
head>

<
style>
.
corchetes {
    
color#f93; 
    
font-weight:bold;
    
width:3px
    
visibility:hidden
    
display:inline;
}
</
style>

</
head>

<
body>


<
a href="a.htm">enlace</atexto texto texto 
<a href="s.html">otro enlace</amas texto 
<a href="i.htm">y otro</ay se acaba aqui

<
script

// necesitaba dos funciones, el insertBefore que ya existe, y el insertAfter que nos lo sacamos de la manga
function insertAfter(parentnodereferenceNode) {
    
parent.insertBefore(nodereferenceNode.nextSibling);
}

// la coleccion de <a> (anchors)
var As=document.getElementsByTagName("A"); 
var 
corchete1,corchete2;

//por cada enlace
for(var a=0;a<As.length;a++) {

    
//quitamos los espacios anteriores y posteriores a los enlaces, que si no con el corchete oculto parecera doble espaciado
    
var anterior = As[a].previousSibling;
    if(
anterior!=null) {
        
anterior.nodeValue  anterior.nodeValue.substr(0,anterior.nodeValue.length-1); 
    }
    var 
siguiente = As[a].nextSibling;
    if(
siguiente!=null) {
        
siguiente.nodeValue siguiente.nodeValue.substr(1);
    }
    
    
//creamos los corchetes, y les aplicamos el estilo "corchetes"
    
corchete1=document.createElement("DIV");
    
corchete2=document.createElement("DIV");
    
corchete1.appendChilddocument.createTextNode("[") );
    
corchete2.appendChilddocument.createTextNode("]") );
    
corchete1.className=corchete2.className="corchetes";
    
    
//insertamos los corchetes antes y despues del enlace
    
As[a].parentNode.insertBeforecorchete1 , As[a] );
    
insertAfter( As[a].parentNodecorchete2, As[a] );
    
    
//los eventos que se ocuparan de poner los enlaces y quitarlos
    
As[a].onmouseover=function() { 
        
this.previousSibling.style.visibility="visible";
        
this.nextSibling.style.visibility="visible";
    }
    As[
a].onmouseout=function() { 
        
this.previousSibling.style.visibility="hidden";
        
this.nextSibling.style.visibility="hidden";
    }
}

</script>


</body>

</html> 
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.