2014-02-11 55 views
1

fancybox內容在頁面加載的同時也會加載..我希望它能夠在你點擊鏈接的時候加載內容......現在當你打開頁面時fancybox裏面的內容會被加載。我認爲你必須把一個事件處理程序,但我不知道如何。如何在點擊鏈接後加載fancybox內容?

請觀看視頻以充分了解! http://www.youtube.com/watch?v=b6MxkBhRC-w

這裏是我的代碼

<body> 

<a href="#image_link" title="PutLockerMedia" id="click">watch</a> 
<div style="display:none"> 
    <div id="image_link"> 
    <div class="imageWrapper"> 
     <div class="image"> 
    <iframe src="http://www.putlocker.com/embed/E25FA20CE8643E5F" width="600" height="360" frameborder="0" scrolling="no"></iframe> 
     </div> 
    </div> 
    </div> 
</div> 




<script type="text/javascript"> 
$(document).ready(function() { 
     $("#click").fancybox(); 
    }); 
</script> 


</body> 

回答

1

您遇到的問題是您正在加載iframe作爲內嵌內容,因此無論它是否可見,它仍然在後臺加載。

你要做的是什麼,而不是針對直列選擇#image_link,直接在<a>標籤像定位到iframe(它的屬性src值)的內容:

<a href="http://www.putlocker.com/embed/E25FA20CE8643E5F" title="PutLockerMedia" id="click">watch</a> 

.. 。這就是你唯一需要的HTML(你可以刪除隱藏div

然後使用此代碼:

$(document).ready(function() { 
    $("#click").fancybox({ 
     type: "iframe", 
     width: 600, 
     height: 360 
    }); 
}); 

JSFIDDLE

+0

謝謝終於有人明白我上帝保佑你:) – user3295224

0

我不知道的fancybox,但我知道類似的東西 '收藏夾'。我認爲他們可能以同樣的方式工作。

不是fancybox加載您需要的內容,但iframe加載。我想,Fancybox只會以某種風格展示它。

所以嘗試刪除iframe中的src屬性。並嘗試顯示fancybox使用API​​。我可以使用lightbox來展示我的意思。

$("#click").click(function() {$("iframe").attr("src","xxxx"); $.lightbox("#image_link")})

我希望它能幫助。

相關問題