2016-09-15 114 views
0

PrettyPhoto圖庫腳本。Jquery .click不能與PrettyPhoto結合使用

我想只加載每個畫廊的前3張照片。如果用戶開始查看這些第一張照片,則該腳本必須加載該圖庫的所有照片。

<a href="photo_1.jpg" data-bid="6780" data-rel="PrettyPhoto[g1a][1]"><img src="thumbnail_1.jpg" /> 
<a href="photo_2.jpg" data-bid="6781" data-rel="PrettyPhoto[g1a][1]"><img src="thumbnail_2.jpg" /> 
<a class="loadimgs" data-gallery="1" href="photo_3.jpg" data-bid="6782" data-rel="PrettyPhoto[g1a][1]"><img src="thumbnail_3.jpg" /> 

正如你可以在上面看到,photo_3.jpg的鏈接包含類= 「loadimgs」。當用戶點擊第三張縮略圖時,PrettyPhoto必須顯示完整圖像,同時Jquery必須發送請求至more-images.php將此圖庫的所有鏈接/縮略圖加載到容器中.load_more_images

<div style="display:none" class="load_more_images" id="1"></div> 

不幸的是,它不起作用。不起作用意味着

$(document).on('click',".loadimgs", function() 

被完全忽略。 當我點擊第三張縮略圖時,PrettyPhoto打開了一張全尺寸的照片,但沒有要求more-images.php文件。瀏覽器控制檯不顯示任何錯誤,什麼都沒有。

有沒有可能.click與PrettyPhoto結合使用?如果是這樣,你可以建議任何其他方式如何在用戶點擊第三個縮略圖時調用more-images.php文件?

$("a[data-rel^='PrettyPhoto[g1a]']").PrettyPhoto({ 
allow_resize:0, 
deeplinking:false 
}); 

$(document).on('click',".loadimgs", function(){ 
var gallery_id=$(this).attr("data-gallery"); 
$('.load_more_images').load("/more-images.php?gallery_id="+gallery_id"); 
alert("It works"); 
}); 
+0

請問你能提供一個小提琴嗎? –

回答

0

更換方式,你附加的事件與此:

$('.loadimgs').click(function(ev){ 
    var gallery_id=$(this).attr("data-gallery"); 
    $('.load_more_images').load("/more-images.php?gallery_id="+gallery_id); 
    alert("It works" + gallery_id); 
}); 

你也有一個報價,導致在本月底失效,最後括號前:$(」。load_more_images' ).load(「/ more-images.php?gallery_id =」+ gallery_id「);

+0

哦,你還需要關閉一個標籤,如果它們沒有關閉的話代碼附加他們沒有),也取代.PrettyPhoto與.prettyPhoto。 – Sergiu

+0

謝謝!這解決了描述問題,但創造了一個新問題。 PrettyPhoto忽略新加載的圖像,不顯示它們。如何將加載的圖像推送到3張第一張圖像需要一些方法。必須提交一個新問題。 – tabaiba