2010-10-13 3 views
1

J'ai deux listes avec images, Album et Favoris.
Lorsque je clique sur une vignette de l'album, je veux vérifier si cette image est déjà dans la liste des favoris.jquery: contient un sélecteur pour vérifier deux listes

J'ai essayé d'utiliser: contains mais renvoie false à chaque fois. exemple ici: http://jsfiddle.net/tunafish/yJ95f/1/

Est: contient la bonne option ou dois-je aller avec de vrais tableaux?
Les listes image ne sont pas longs, max 20.

HTML:

<div id="album"> 
    <p>Photo Album</p> 
    <ul class="gallery"> 
     <li><img src="001.jpg" /></li> 
     <li><img src="002.jpg" /></li> 
     <li><img src="003.jpg" /></li> 
     <li><img src="004.jpg" /></li> 
     <li><img src="005.jpg" /></li> 
    </ul> 
</div> 
<div id="favorites"> 
    <p>Favorites</p>  
    <ul class="gallery"> 
     <li><img src="001.jpg" /></li> 
     <li><img src="002.jpg" /></li> 
     <li><img src="010.jpg" /></li> 
    </ul> 
</div> 

JS:

$("#album li img").click(function() { 
    var url = $(this).attr('src'); 
    alert(isFavorite(url)); 
}) 
function isFavorite(url) { 
    return $("#favorites li img[src]:contains(" + url + ")").length > 0; 
} 

Répondre

0

essayer:

function isFavorite(url) { 
    return $("#favorites li img[src*='" + url + "']").length > 0; 
} 
+0

qui est génial! Vive Shay. – FFish

Questions connexes