2010-10-05 16 views
16

he siguiendo unas etiquetas:¿cómo puedo extraer texto después de hash # en la parte href de una etiqueta?

<a href="#tab1">Any tab1 Label</a> 
<a href="#tab2">tab2 Label</a> 
<a href="#tab3">Any tab3 Label</a> 
<script> 
function tellMyName() 
{ 
    alert(this.href); 
} 

</script> 

ahora quiero obligar a la función tellMyName a todas las etiquetas A y bajar Tab1 si se hace clic en cualquier etiqueta Tab1, Sep2 si Sep2 Etiqueta se hace clic y así sucesivamente ...

+0

Una cosa más que he notado ... Creo que tienes que usar Any tab1 Label y así sucesivamente .... – PHP

Respuesta

30
function tellMyName() { 
    alert(this.hash.substr(1)); 
} 

$('a').click(tellMyName); 
+0

lo siento, obtengo la dirección web como localhost/xyz delante de ella también ... – KoolKabin

+1

si debe ser this.hash.substr (1) – KoolKabin

+0

@KoolKabin - editado. Ejército de reserva. – sje397

0
<script> 
function tellMyName() 
{ 
    var text = this.href; 
    text = text.replace("#",""); 
    alert(text); 
} 

</script> 
+0

lo siento, obtengo la dirección web como http: // localhost/xyz/delante de ella también ... – KoolKabin

+0

como se sugiere a continuación, debes vincular esta función a la etiqueta de anclaje . es decir, $ ('a'). haga clic en (tellMyName); –

19
function tellMyName() { 
    var str = this.href.split("#")[1]; 
    alert(str); 
} 

No todo el tiempo solo se mostrará la parte de hash en el enlace. A veces, el host se agrega al href. Al dividir el href con el hash (#) y obtener la segunda parte de la cadena dividida, obtendrá lo que desea.

+0

y devolvió la correcta como yo estoy buscando ... thnx y vinculante ha estado trabajando como en http://stackoverflow.com/questions/3861076/how-can-i-extract-text-after-hash-in-the-href-part-from-a -tag/3861095 # 3861095 – KoolKabin

0

Prueba esto -

<a href="#tab1">Any tab1 Label</a> 
<a href="#tab2">tab2 Label</a> 
<a href="#tab3">Any tab3 Label</a> 

<script type="text/javascript"> 
$('a').click(function(){ 
alert(this.hash.split('#')[1]); //This will alert # part in clicked anchor tag 
}); 
</script> 
2
function tellMyName() { 
    alert(this.hash.replace('#','')); 
} 

$('a').click(tellMyName); 

crazy fiddle

3

Puede hacer algo como esto

var fragment = $('a#my-link')[0].hash.substr(1); 

Check it out.

0

Usted puede u sí algo como esto:

... 
var activeTab = $(this).attr("href"); 
$(activeTab).fadeIn(); 
... 

Este uso href = "# pestaña-id" para localizar # elemento de pestaña-ID que desea, y se desvanecen en

0
function tellMyName() { 
    var str = this.prop("hash").substr(1) 
    alert(str); 
} 

this.prop("hash") will return the hash value i.e #tab1 
Cuestiones relacionadas