2012-03-08 71 views
0

好的 - 所以我創建了一個小圖庫 - 基本上當您單擊縮略圖時,它從alt標籤中提取標題 - 將其放入div在圖像下方顯示爲標題,並將圖像顯示爲全屏bg從alt標籤中提取值 - 需要點擊更改jquery

我想要做的是在頁面加載時顯示此標題 - 當您單擊時,刪除現有值並將其替換與新的

目前標題不顯示在網頁加載,當你點擊它 - 它顯示標題按需要,但是當你點擊另一個圖像它不會刪除這個標題

繼承人我現有的代碼

<ul id="horses"> 
       <li><a class="clicker" rel="drawings-bg"><img src="/assets/img/portfolio/horse.jpg" alt="horse" /></a></li> 
       <li><a class="clicker" rel="contact-bg"><img src="/assets/img/portfolio/dogs.jpg" alt="dogs" /></a></li> 
       <li><a class="clicker" rel="drawings-bg"><img src="/assets/img/portfolio/horse.jpg" alt="horse" /></a></li> 
    </ul> 

jQuery的

 $(document).ready(function() { 
    var imginfo = $('.imgtitle'); 
$("ul#horses li img").click(function() { 
     if(imginfo) $(imginfo).siblings('.imgtitle').remove(); 
$(this).parent().append("<div class=imgtitle>" + $(this).attr("alt") + "</div>"); 
    }); 
}); 

在此先感謝

+1

是正常的,你imginfo VAR有以前沒有被分配到任何一個類別的選擇元件?我沒有看到任何一個叫做imgtitle的類的元素 – Th0rndike 2012-03-08 14:32:34

+0

而是發生了什麼?你有錯誤嗎?沒有?沃爾多穿着小禮帽出現在你的網頁上無處可去? – 2012-03-08 14:33:20

+0

我不明白這個問題。你想在標題中顯示什麼? – JJJ 2012-03-08 14:34:27

回答

1

大多數似乎工作:

此行有一個問題:

if(imginfo) $(imginfo).siblings('.imgtitle').remove(); 

jQuery的情況下,總是truthy,因此該行會一直運行。不過,不應該更像這樣嗎?

$(document).ready(function() { 
    var imginfo = $('.imgtitle'); 
    $("ul#horses li img").click(function() { 
    $('ul#horses li .imgtitle').remove(); 
    $(this).parent().append(
     "<div class=imgtitle>" + $(this).attr("alt") + "</div>" 
    ); 
    }); 
}); 

...如果你想顯示一個新的時去除其他遊戲:http://jsbin.com/iqugih

+0

歡呼聲 - 但仍然有同樣的問題 - 沒有加載頁面加載,而不是刪除當你點擊另一個元素 – Callam 2012-03-08 14:41:46

+0

真棒 - jsbin例子是我想要的 - 乾杯夥計! – Callam 2012-03-08 14:44:42

+0

@AntiFaith:非常好,很高興幫助! – 2012-03-08 15:07:00

1

試試這個:

$("ul#horses li img").click(function() { 
    var i = $(this); 
    var imageTitle = i.parent().find('.imgtitle'); 
    if(null === imageTitle || imageTitle.length == 0) { 
     imageTitle = $('<div/>').addClass('imgtitle'); 
     i.parent().append(imageTitle); 
    } 

    imageTitle.html(i.attr('alt')); 
}); 
+0

它的工作原理,但它的工作原理與我目前的一樣 - 不會在頁面加載時顯示標題 - 以及何時你點擊它並沒有刪除以前的標題 – Callam 2012-03-08 14:40:52