2014-10-08 19 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