Comment puis-je obtenir un sélecteur jQuery expression du texte?
J'ai un sélecteur jQuery, qui a enchaîné fonction.
L'intérieur de la fonction, je veux obtenir l'accès au TEXTE représentant l'expression pour le sélecteur.
$("cat dog").function() {
//how do I get access to the "cat dog" string from inside THIS function ?
};
Je l'ai simplifiée dans cet exemple de code que je veux réellement faire. Je suis en train d'écrire un plug-in et j'ai besoin d'accéder au sélecteur pour qui le jeu de fractionnement a été créé. Évidemment, dans cet exemple particulier, j'ai accès à "chien chat" parce que je l'ai écrit. Donc, l'image juste et ce dans un plugin.
Son un peu difficile de google pour cela.
edit: le "sélecteur" la propriété est malheureusement maintenant obsolète. http://jquery.com/upgrade-guide/1.9/#selector-property-on-jquery-objects
- Même si vous pouvez obtenir à la première sélecteur, souvenez-vous que vous pourriez avoir quelque chose comme $(".cat .chien").les parents("div:first").find(".perroquet").each(function(){/*...*/}); où vous n'avez pas un simple sélecteur.
- c'est un point que je suis aux prises avec. je suis peut-être vous demandez-vous à propos de la traversée de l'arbre, mais la plupart du temps simplement obtenir le dernier élément est très bien. je voudrais veulent généralement faire quelque chose comme ceci $('.chat").assertNonEmpty().each(function(){});
- Toute chance vous pourriez mettre à niveau vers jQuery 1.3.1 et utiliser le "sélecteur"?
- je suis en attente pour 1.3.2 - stackoverflow.com/questions/498469. je dois aller vivre demain avec une très petite partie d'un nouveau site et je ne veux pas que les gens ont à attendre pour les images à charger avant le jQuery exécute. dès que je l'ai confirmé 1.3.2 a pas d'erreur, je vais passer. merci pour l'info
Vous devez vous connecter pour publier un commentaire.
Il est un "sélecteur" attribut dans l'objet jQuery, mais je ne suis pas sûr que c'est toujours disponible.
C'est loin d'être optimal, mais fonctionne dans certains cas. Vous pouvez effectuer les opérations suivantes:
Ce sera le retour de la dernière sélecteur utilisé pour l'élément. Mais il ne fonctionnera pas sur non des éléments existants.
Cela fonctionne avec jQuery 1.2.6 et 1.3.1 et peut-être d'autres versions.
Aussi:
Modifier
Si vous cochez immidiatly après le sélecteur a été utilisé, vous pouvez utiliser les éléments suivants dans votre plugin:
Alors la suivante devrait fonctionner:
Dans votre plugin que vous pouvez faire:
Mais encore:
Si vous êtes à l'aide de firebug vous pourriez
console.log(this)
l'intérieur de la fonction et de voir si le sélecteur de chaîne est accessible quelque part dans l'objet. Désolé, je ne suis pas familier avec le jQuery API.Cela fonctionnera si vous souhaitez accéder au sélecteur de chaîne de caractères dans votre fonction:
Cela fonctionnera également si plusieurs sélecteur de sont utilisation,
par exemple,
Peut-être que cela à résoudre votre problème :
Pour ceux qui veulent obtenir à l'intérieur de leurs plugins sélecteur de chaîne de caractères donnée à jQuery, je suis heureux d'avoir amélioré la formidable réponse donnée par @Pim Jager:
jQuery.fn.init
la fonction
selector, context, root
pas deux;new
mot-clé doit être ajouté à l'instruction de retour dejQuery.fn.init
;$(this).getSelector();
Enfin, c'est ce que j'ai eu à travailler pour moi comme un charme:
Il fonctionne avec les versions de jQuery pour autant que je suis concerné (à partir de la version 1.7.0 pour 3.2.1).
PS. Fonctionne très bien même avec jQuery 1.2.3 disponible ici sur stackoverflow trop. Donc, je pense, la suite est ok pour toutes les versions de jQuery si vous voulez obtenir un sélecteur jQuery expression du texte à l'intérieur du plugin:
JS:
HTML:
Je ne pouvais pas comprendre comment obtenir la référence à la chaîne de valeur du sélecteur de condition à l'intérieur de $('value_i_want_here') quand il est lié à une fonction; ça semble être un problème difficile. Toutefois, si vous préférez tester dans IE[x] il y a toujours Firebug Lite qui fonctionne très bien en utilisant la console.log(var|val).
bien, je suis encore à essayer de comprendre si vous essayez d'avoir le nom de l'élément? ou de l'identifiant et/ou de la classe ou de la totalité.
Vous pouvez obtenir de l'élément avec cette
pas sûr de ce qui se passe si vous avez plus d'une classe. peut aller dans un tableau ou quelque chose, et vous pourriez obtenir qu'avec l'index.