Charger une balise XML au hasard
Bonjour,
Pour le bien d'un site je dois charger les informations de plusieurs div grâce à un seul XML.
Celui-ci ce présente sous cette forme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?xml version="1.0" encoding="UTF-8"?>
<data>
<block >
<class>one</class>
<titre>Titre</titre>
<image path="images/image1.jpg"></image>
<image path="images/image2.jpg"></image>
<image path="images/image3.jpg"></image>
<description>
Une super description
</description>
<bgcolor>#de052d</bgcolor>
</block>
<block >
<class>two</class>
<titre>Titre2</titre>
<image path="images/imagetwo.jpg"></image>
<description>
Une super description2
</description>
<bgcolor>#de052d</bgcolor>
</block>
etc... |
Donc il y a :
- Un titre
- Une image
- Une description
- La couleur de bg de la div
Seulement voila il une div la .one qui a 3 image et donc je dois en prendre une des trois au hasard. Mais voila je ne sais pas comment :/ .
J'ai pour ce faire le code Jquery suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| var jqxhr = $.get("banner.xml", function(data) {
$(data).find('block').each(function(){// find all blocks
var $block = $(this);
var classs = "."+$block.find('class').text();
var image = $block.find("image").attr("path");
$(classs).find(".content").css("background-color", $block.find("bgcolor").text() );
$(classs).find(".contain").css("background-color", $block.find("bgcolor").text() );
if(classs==".one") {
//Prendre une des 3 images
} else {
$(classs).find("img").attr("src", image );
}
$(classs).find("h2").text( $block.find("titre").text() );
$(classs).find(".description").html( $block.find("description").text() )
});
}) |
- Donc je charge mon XML
- je parcours les block
- je prends l'attribut path pour l'image
- je mets met backgroud
- si la classe est one je prend une des 3 images 3 est un exemple il peut en y avoir qu'une ou 5 même 1000
- sinon je prends simplement l'image
- je mets mon h2 et ma description
Et je suis paumé je serait tenté de faire un
<image id="1" path="images/ima-bpk1.jpg"></image>
<image id="2" path="images/ima-bpk2.jpg"></image>
<image id="3" path="images/ima-bpk3.jpg"></image>
merci pour votre aide