2014-02-21 44 views
2

我正在嘗試合併一個腳本(我認爲這是一個「故障」,我相信它),它將圖像垂直居中在隱藏溢出的div內。它工作得很好,但是我的很多圖像都是在mouseover時動態加載的。將jquery調用附加到圖片加載

我需要找到一種方法來調用圖像加載腳本。現在已經過了兩天了,由於JS/JQuery不是我的母語,我在這裏找到了我的自我。

任何人都可以建議我怎麼可能得到以下火災圖像加載? 非常感謝!因此,任何新的圖像內的指定的div一個裝載得到應用到一個onload功能

$("#book").load(function() { 
    // Handler for .load() called. 
}); 

與事件代表團,使其:

<script type='text/javascript'>//<![CDATA[ 
$(window).load(function(){ 
    $('.container').each(function() { 
    var $img = $(this).find('img'); 
    $(this).scrollTop(($img.height() - $(this).height())/2); 
    $(this).scrollLeft(($img.width() - $(this).width())/2); 
    }); 
}); 
//]]></script> 
+0

你用什麼代碼動態加載圖像? – levi

+0

這是一個圖像循環儀 - OpenCart - 鼠標懸停功能 – user3335446

+0

這個問題是非常類似於[這個前一個問題](http://stackoverflow.com/questions/3537469/jquery-detect-when-image-has-loaded)。答案描述瞭如何檢測圖像何時加載,然後可以使用它來觸發事件。 –

回答

0

$(document).ready(...會等到頁面上的一切都在執行之前加載(包括圖片)功能。

<script type='text/javascript'>//<![CDATA[ 
$(document).ready(function(){ 
    $('.container').each(function() { 
    var $img = $(this).find('img'); 
    $(this).scrollTop(($img.height() - $(this).height())/2); 
    $(this).scrollLeft(($img.width() - $(this).width())/2); 
    }); 
}); 
//]]></script> 
+0

我相信圖片是在這個問題的問題頁面後動態加載的,請參閱我的回答以瞭解如何解決這個問題 – clancer

+0

您可以加載圖片並隱藏它們嗎?然後做我所做的。 – maxisme

+0

讚賞馬克西米利安,但clancer是正確的,必須在圖像加載時調用腳本。我有太多的圖像涉及預加載。 – user3335446