2010-10-20 48 views
0

J'essaie de créer une liste de favoris dynamique dans cette application sur laquelle je travaille. Mon problème pour le moment est que je ne peux pas diriger un événement pour basculer des noms de classe li spécifiques. J'ai une grande liste de li et de pages séparées qui leur sont associées. Chaque page a une barre de titre avec plusieurs liens d'image, numéro de téléphone, etc. la dernière image est une étoile que je devrais avoir viré au bleu lorsque l'utilisateur clique dessus et changer la classe de son élément li correspondant sur une autre page. Je ne veux pas avoir à écrire un code individuel pour chaque élément et je deviens de plus en plus frustré en essayant de corréler chaque clic d'étoile avec un des 37 éléments li ... J'ai utilisé jquery mais je ne peux pas le comprendre ...Comment faire pour basculer une classe sur un élément Li qui se trouve sur une page séparée de ma fonction de clic

div contenant des éléments li i doivent passer afin de les cloner à un autre « favoris » liste

<div id="barlist"> 
    <div class="toolbar"><h1>Bar List</h1><a class="button back"Back</a> 
    <a class="button flip" Settings</a> 
</div> 
<ul class="edgetoedge">  
    <li class="aleHouse"><a Ale House</a></li> 
    <li class="argyle"><a Argyle</a></li> 
    <li class="bearlys"><a Bearlys</a></li> 
    <li class="bostonPizza"><a>Boston Pizza</a></li> 
</ul> 
</div> 

page correspondante avec l'étoile Image

<div id="aleHouse"> 
    <div class="toolbar"><h1>Ale House</h1><a class="button back" >Back</a>  
</div> 
<div> 
<div class="blackBar"> 
    <img class="white" img src=".../whitestar40(png)" alt="star"> 
</div> 

$("document").ready(function() { 
    $("#barlist li[class=fav]").clone().appendTo("#favorites[class=edgetoedge]"); 
}); 

$("document").ready(function() { 
    $(".white").click(function() { $(???this???).toggleClass(".fav"); }) 
}); 

par exemple, lorsque le whitestar40 est cliqué, je veux il devient bleu et aussi cloner la bière maison li (w Vous avez cliqué sur le bouton pour accéder à cette page) et l'ajouter à ma liste de favoris sur une autre page

+2

Si vous voulez qu'une action sur une page fasse quelque chose sur une autre page, vous devez envoyer l'information via un paramètre de requête ou un cookie. –

+0

... ou sauvegardez dans 'localStorage'. –

Répondre

0

Je suppose que vous affichez ces deux pages en même temps? ... Par opposition à essayer de stocker les informations (que le whitestar40 a été cliqué) à travers la demande. Je commencerais par ajouter un attribut au whitestar40 qui garde la trace de ce qui a été cliqué, et le définir quand ce clic se produit. Ensuite, vous avez les données dont vous avez besoin dans le html/dom sur l'autre page. Est-ce que cela aide ou fait couler le jus?

+0

merci pour la contribution :) – user482024