2012-11-02 57 views
1

我的網頁上有「標籤」,一旦點擊就可以看到相應的圖片。例如:我點擊狗鏈接,並在畫廊上看到狗的圖像。事情是這樣的:我想要有可以搜索我的圖片的鏈接

<a href="#" rel="dog">Show Dogs</a> 

<script> 
$('#filter a').click(function() { 
    if($(this).attr('rel')) { 
     $('img').hide().filter('[class="' + $(this).attr('rel') + '"]').show(); 
     $('img').show(); 
    } 

return false; 

});

<img src="http://www.petliferadio.com/doggydog.jpg" class="dog"> 

但是,它不會爲我工作。會有更容易/更有情感的方式來做到這一點嗎?

+1

您正在顯示過濾後的集合,然後緊接着顯示它們。爲什麼? –

回答

1

檢查空值..

if($(this).attr('rel')) { 

應該

if($(this).attr('rel') != '') { 
     $('img').hide(); 
     $('.' + $(this).attr('rel')).show(); 
    } 
0

隱藏所有圖像,然後在jquery中使用類選擇器僅顯示需要的圖像。

$('#filter a').click(function() { 
    if($(this).attr('rel')) { 
     $('img').hide(); 
     $('img.'+$(this).attr("rel)).show(); 
    } 

return false; 
});​ 
0
$('#filter a').on('click', function() { 
    var cat = $(this).attr('rel'); 
    if(cat.length) $('img').hide().filter('.'+cat).show(); 
});​ 

在點擊錨,得到的類別(簡稱爲 「貓」)從錨點rel屬性,那麼如果該類別具有length,即它不是空的,則隱藏所有圖像,然後過濾基於與之前的rel屬性匹配的類的圖像,並顯示這些圖像。

+0

不知道這是如何回答這個問題。你可以添加一些描述解決方案的文字嗎? –

相關問題