11540 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

j'ai un accordéon provenant de http://jqueryui.com/accordion/#hoverintent

je désire forcer l'ouverture du troisième éléments (item) de l'acordéon.

en html je n'ai pas de UL>IL mais des DIV


<div id="accordion"> <!--	Accordion Start -->

						
<div class="serv_l_t"><strong>titre 1</strong></div>
  <div>
    <p><div class="list">texte contenu du titre 1 </div></p>
  </div>
<div class="serv_l_t"><strong>titre 2</strong></div>
  <div>
    <p><div class="list">texte contenu du titre 2 </div></p>
  </div>
<div class="serv_l_t"><strong>titre 3</strong></div>
  <div>
    <p><div class="list">texte contenu du titre 3 </div></p>
  </div>
<div class="serv_l_t"><strong>titre 4</strong></div>
  <div>
    <p><div class="list">texte contenu du titre 4 </div></p>
  </div>


</div>	<!--	Accordion End -->



je m'explique!
en ouvrant la page html contenant l'acordéon, je désire que le item 3 (par exemple) soir ouvert et non le premier par défault.

merci d'avance

a+
le fichier JS jquery.ui.accordion.js contient cette partie de code

$.widget( "ui.accordion", {
	version: "1.9.2",
	options: {
		/* active: 1, */
		
		animate: {},
		collapsible: false,
		event: "click",
		header: "> li > :first-child,> :not(li):even",
		heightStyle: "auto",
		icons: {
			activeHeader: "ui-icon-triangle-1-s",
			header: "ui-icon-triangle-1-e"
		},

		// callbacks
		activate: null,
		beforeActivate: null
	},


le fait de changer la valeur de la variable active ouvre par défault l'élément voulu!

j'ai essayé plusieurs solution sans succés dont celle ci qui mais sans succés aussi

html

$(document).ready(function() {
	$('#CoffretTxT > ul > li:nth-child(2)').click(function(){
      			var $Item_Dest = $(".cc_item:eq(1)");	
      			var $Lien = $("ul:eq(1) li:nth-child(2)");
      			$(".lien_02").appel($Lien,$Item_Dest);
      			var xyx = 1;
      			$(".accord2").appel_accordion(xyx);
      		});
}
....
<div class="serv_l_t" class="accord2" ><strong>text élément 3 de l'accordion</strong></div>


dans le JS


fn.appel_accordion = function(xyx) {

/* active = xyx;*/
 /* active1 = 1; */
 alert(xyx);
}


solution?? merci
la solution la plus simple est d'injecter le numéro de l'élément depuis le fichier html au fihcier js en tant que variable! ...
c'est ok!
j'ai trouvé ...

dans HTML file


      			var NumSujet = {active : 0};
      			$( "#accordion" ).accordion(NumSujet);



la valeur de la variable active est selon le cas (numéro cible)..

bye