2009-10-21 8 views
0

Je veux que mes liens n'aient pas le contour bizarre et le meilleur moyen que j'ai trouvé pour le résoudre est d'avoir un "lien nul" sur lequel se concentrer après un clic. Cela fonctionne très bien lorsque vous définissez la méthode onclick dans le HTML, mais ce n'est pas idéal. J'ai écrit un extrait rapide de jQuery pour le faire à la place, mais j'ai du mal à le faire fonctionner. Le voici:La fonction de clic de JQuery n'est pas définie

<script type="text/javascript" charset="utf-8"> 
    $j(document).ready(function() { 
     //alert($j('#ml_table thead a').length); 
     $j('#ml_table thead a').click(function(){ 
      $j('#null_link').focus(); return false; 
     }); 
    }); 
</script> 

Quelqu'un a-t-il des problèmes avec cela? L'alerte crache 8 qui est le nombre correct d'éléments d'ancrage, donc je sais que le sélecteur fonctionne correctement. Les jQuery docs disent que je n'ai pas à parcourir le tableau des éléments.

Merci!

Répondre

3

Essayez css:

#ml_table thead a { 
    outline:none; 
} 

Et pour IE:

$('#ml_table thead a').attr('hidefocus', true) 

Références:

Mais oui, pour répondre à votre question directe la fonction d'un clic est appliquée aux 8 ancres trouvées.

Cette astuce focus semble plutôt funky. Si vous voulez vraiment le garder, vous pouvez essayer à la place:

$j('#ml_table thead a').click(function() { 
    $(this).blur(); 
    return false; 
}) 
+0

nice! encore un peu curieux pourquoi le jQuery ne fonctionne pas si – Tony

+0

très étrange .... le code que vous avez écrit pour flouter ne fonctionne pas non plus – Tony

+0

en fait je pense que le problème est que j'utilise sortable qui écrase la fonction onclick pour trier la table ...Oops – Tony

Questions connexes