Comment choisir avec un attribut de style spécifique? J'essaie: p> mais rien n'est sélectionné. p> p>
5 Réponses :
(cela ne répond pas à la question. Toutefois, si la personne qui a écrit la page HTML avait utilisé des cours au lieu de l'attribut de style, l'OP n'aurait pas ce problème.)
.foo { width: 420px; text-align: left; margin-top: 10px; margin-bottom: 10px; }
<div class="foo"> </div>
$("div.foo")
Peut-être essayez peut-être Il serait toutefois plus facile de sélectionner l'élément par un attribut tel que la classe ID ou CSS, ou par sa position à un élément comportant une classe ID ou CSS. p> p>
À ma connaissance, il n'y a aucun moyen de le faire à l'aide d'un sélecteur JQuery, mais vous pouvez utiliser le filtre () Méthode à la place:
$("div").filter(function() {
var $this = $(this);
return $this.css("width") == "420px"
&& $this.css("text-align") == "left"
&& $this.css("margin-top") == "10px"
&& $this.css("margin-bottom") == "10px";
});
Cache $ (ceci). S'il te plaît. Pour le souci de ma CPU.
OK, personne dans le bon esprit ne ferait réellement ce que le questionneur a essayé - cependant, le filtre est un grand tour pour beaucoup de bonnes choses!
Votre exemple fonctionne pour moi, dans le chrome au moins, une fois que j'ai corrigé la typographie de la manquante "à la fin de la ligne.
$("div[style='width: 420px; text-align: left; margin-top: 10px; margin-bottom: 10px;']");
Ceci est une solution très spécifique. Et si vous recherchez un attribut d'un style, par exemple. text-align: gauche code>?
<h1>Hello header</h1>
<p style="color: red;">Hello My</p>
<script>
$(document).ready(function(){
$("p[style='color: red;']").fadeOut("10000",function(){
$("h1").hide();
});
});
</script>
The style should be exact same as of in the tag and $ selector
Pourquoi n'utilisez-vous pas de classes / IDS pour sélectionner des choses? Et pourquoi utilisez-vous des styles code> style = code>?
@Thejh Il y a de bonnes raisons d'utiliser des styles inline. Lorsque vous avez de nombreux objets qui diffèrent d'un style de base à chaque fois, la configuration d'une nouvelle carte d'identité est souvent inutile ou pour le code dynamique, non applicable.
J'essaie d'extraire des données d'une page HTML existante.
Essayez de chercher un ancêtre / descendant avec un identifiant, puis utilisez
.children ('div') code> ou.parent () code> etc pour obtenir la div en question.Vous savez que cela fonctionne sans la faute de frappe, voir ma réponse.
Dupliqué possible de Y a-t-il un sélecteur de style à JQuery?