Je tire mes cheveux !! Grrr ...JQuery: chaîne de sélection avec filtre d'attribut: le résultat ne persiste pas?
Ce semble travailler:
//get all the foo and bar links that point to a named anchor:
$("a.foo,a.bar").filter("[href^=#]").click
(
function()
{
doSomething($(this).attr("href").substr(1));
return false;
}
);
Lorsque je me connecte la sortie '$ (this) .attr ("href") substr (1)' à la I console voir l'anchorname sans le hash, pour tous les liens pertinents. Tout bon. Mais à l'intérieur doSomething(), typeof() de dit que j'ai une chaîne - mais c'est vide !! Pourquoi?!!
function doSomething(str)
{
//log str : it's empty!!
}
Habituellement peu après que je pose une question à ici, il est trop bizarre pour quiconque de me aider ou je comprendre ma propre stupidité plus tard. J'espère que quelqu'un peut aider cette fois! :-(
============== SOLVED =====================
* ******** C'était ma propre stupidité **********
intérieur doSomething la première chose que mon code a été:
if(str = "") return;
(gifles front). Merci à tous de me faire regarder cela d'une manière différente
omg ... merci pour le commentaire sur 'modification de l'argument' ... Je me sens tellement stupide. J'avais fait 'if (str = "") retour; pouvez-vous repérer le problème? Yah ... – rekindleMyLoveOf