2014-10-08 13 views
1

我嘗試通過點擊插件fotorama添加圖片的增加。 我使用此代碼來增加活動圖像,但此代碼適用於頁面上的所有元素。如何添加圖片的增加fotorama插件

jQuery("div:contains('fotorama__stage__frame fotorama__fade-rear fotorama__loaded  fotorama__loaded--img fotorama__active'):contains('img .fotorama__img')").click(function() { 
    var o=jQuery(this).parent(); 
    var url= jQuery("div:contains('--img fotorama__active')").find('img').attr('src'); 
    var html='<a href="" class="clone"><img src="'+url+'" /></a>' 
    o.append(html); 
    o=o.find('.clone'); 
    o.animate({}); 
    console.log('click'); 
    o.click(function() { 
     jQuery('.clone').remove(); 
    }); 
}); 

如何解決這個錯誤? http://arngoldt.com/?page_id=18 - 我的代碼在這個頁面上的例子。

回答

0

你使用了一個很奇怪的選擇器。嘗試使用jQuery(".fotorama__img").click(...)jQuery(".fotorama__stage__shaft .fotorama__active img")。此外,看起來應該使用fotorama:showend事件來接收大圖像src,因爲它呈現異步。欲瞭解更多信息,請參閱documentation page

+0

謝謝你,謝謝你的建議。我使用fotorama:加載事件。但我不明白如何將點擊僅應用於大圖。現在點擊下一步+上一步按鈕和拇指圖像的功能。 – ilenka 2014-10-09 08:22:22

+0

這個選擇器'jQuery(「.fotorama__stage__frame.fotorama__loaded.fotorama__loaded-img.fotorama__active img」)'只返回大圖。嘗試使用它。 – Sergey 2014-10-09 09:57:17

+0

您也可以使用fotorama API訪問活動大圖片。你可以像這樣'jQuery(「。fotorama」)。data(「fotorama」).activeFrame。$ stageFrame' – Sergey 2014-10-09 10:14:27