11496 sujets

JavaScript, DOM et API Web HTML5

Non Smiley smile

Tu peux par contre la créer.
(p.s. c'est une méthode, pas une propriété Smiley cligne ça c'est pour le jargon)

Tu parcours l'ensemble de tes balises (getElementsByTagName('*')) et tu testes s'il y a un title == leTitleRecerché

Quel est ton niveau en JavaScript ?
Non, les seuls fonctions de selection du type "get" supportées par la norme DOM2 (et donc nativement supportées par les navigateurs modernes) sont :

- getElementById()
- getElementsByTagName()
- getElementsByName()

Certaines personnes se sont amusé à dellopper des fonctions similaires. Par exemple : getElementsBySelector() ou getElementsByClassName()
Olivier je débute complètement en javascript et je n'ai encore jamais codé avec ce language. Merci pour l'info même si je vois pas trop ce que tu veux dire qd tu dis
a écrit :
Tu parcours l'ensemble de tes balises (getElementsByTagName('*')) et tu testes s'il y a un title == leTitleRecerché


Merci Jep pour ces précieuses infos, alors ça veut dire qu'on ne peut pas utiliser la méthode getElementsByClassName() en standard?
Elle ne fait pas partie des méthodes implémentées par le dom level 2.

Mais tu peux créer cette méthode toi même (ou du moins en faire un copier coller de chez qq un d'autre) et ensuite l'utiliser Smiley smile
Une idée (non testée) de la fonction (ça sera pas une méthode, je me rappelle plus de la syntaxe pour créer les méthodes, un peu rouillé Smiley lol )


function getElementsByTitle(title)
{
// on crée une variable tableau qui contiendra l'ensemble des éléments cherché
var eltsTitle = new Array();
// on récupère tous les éléments de la page (*) grâce à la méthode getElementsByTagName dans une variable de type "array" (tableau)
var elts = document.getElementsByTagName('*');

// on parcours l'ensemble du tableau avec une boucle
for (var n = 0; n < elts.length; ++n) {
// si l'éléments "n" a un attribut title qui correspond à la valeur recherchée (title) alors on l'ajoute au tableau final
if (elts[n].getAttribute('title') && elts[n].getAttribute('title') == title) {
eltsTitle.push(elts[n]);
}
}
// on renvoi le tableau une fois la boucle parcourue dans son ensemble
return eltsTitle;
}


Et on utilise ça comme ça

var myTitles = getElementsByTitle('montitre');


On pourrait optimiser pour ajouter un sélecteur dans la fonction etc...