Utilisation de prototype et regex
Bonsoir tout le monde,
Tout d'abord je tiens a dire que je suis d�butant en Javascript, merci d'�tre indulgent :)
Voil�, j'aimerai me lancer dans la cr�ation d'une fonction (j'ai essay� d'�crire une classe mais je n'ai pas encore les bonnes notions pour en faire en JavaScript).
Je vous explique tout d'abord mon code HTML...
Cela va �tre du genre :
Code:
1 2 3 4 5 6 7 8
| <div id="portefolio">
<div id="picture_1" class="picture_portefolio"></div>
<div id="content_2" class="content_portefolio"></div>
<div id="picture_2" class="picture_portefolio"></div>
<div id="content_2" class="content_portefolio"></div>
<div id="picture_3" class="picture_portefolio"></div>
<div id="content_2" class="content_portefolio"></div>
</div> |
Lors du clique sur un picture_[0-9*] j'aimerai qu'il r�cup�re le nombre pour ouvrir l'�l�ment content_[nombre_re�u]
Sachant que j'aimerai que quand je clique sur un autre �l�ment, il me ferme celui qui est ouvert.
Le probl�me pour moi est enfaite de r�cup�rer le nombre d�rri�re et de lister les �l�ments d�j� ouvert.
Je pense que pour pouvoir lister tout les �l�ments d�j� ouvert il faut utiliser Event.findElement()...
Voil�a ce que j'ai fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| var Portefolio = Class.create();
Portefolio.prototype = {
initialize : function(element) {
this.element = $(element);
},
getInit : function() {
Event.observe('picture_[0-9*]', 'click', function()
{
content_open = Event.findElement(this.element, 'content_');
if(content_open != null)
{
Effect.BlindUp(content_open.tagName);
}
else
{
nbr = ??;
id_content = 'content_' + nbr;
Effect.toggle(id_content, 'slide');
if(id_content.visible())
{
Effect.ScrollTo(id_content);
}
}
}
}
}
Event.observe(window,'load',function(){ new Portefolio('portefolio'); }); |
Pouvez vous me donner un coup de main s'il vous plait ?
Merci d'avance,
Cordialement