2011-12-05 59 views
2

一個小問題。如何檢查Jcropbox中的圖片是否已完全加載? 我是一個JavaScript初學者,所以如果有人能幫忙,我會非常感激。 這是我的代碼。如何檢查圖片是否完全加載?

jQuery(document).ready(function() { 
    jQuery('#<%= imgPerson.ClientID %>').Jcrop({ 
     onChange: showPreview, 
     onSelect: updateCoords, 
     aspectRatio: 1, 
     minSize: [60, 60], 
     setSelect: [1, 1, 60, 60], 
     allowSelect: false 
    }); 
}); 

function updateCoords(c) { 
    jQuery('#<%= X.ClientID %>').val(c.x); 
    jQuery('#<%= Y.ClientID %>').val(c.y); 
    jQuery('#<%= W.ClientID %>').val(c.w); 
    jQuery('#<%= H.ClientID %>').val(c.h); 
}; 

function showPreview(coords) { 
    var height = '<%= hdnimgHeight.ClientID %>'; 
    var height2 = $(height).value; 
    var rx = 60/coords.w; 
    var ry = 60/coords.h; 

    $('#<%= imgPreview.ClientID %>').css({ 
     width: Math.round(rx * 400) + 'px', 
     height: Math.round(ry * height2) + 'px', 
     marginLeft: '-' + Math.round(rx * coords.x) + 'px', 
     marginTop: '-' + Math.round(ry * coords.y) + 'px' 
    }); 
}; 
+1

你的問題的Javascript被一些服務器端腳本語言所污染。請修復。 –

+0

@ TomalakGeret'kal:呃,源代碼足夠好。 .NET標籤準確地告訴我們他在做什麼。保留ASP.NET標記,skill2bereal。 –

+0

@Jon:爲了免費爲他做這項研究,我無法將他的代碼傳遞給我的瀏覽器。這提醒我,一些HTML也會有所幫助。 (而且,更重要的是,.NET完全不相關,應該被抽象出來。) –

回答

0

你可以聽圖像的onload事件時的圖像瀏覽器完全加載它被觸發。嘗試這樣的事情

<img src=".." onload="javascript:alert('Image loaded');" /> 
//Here you can call any javascript method in the onload event 

它也有其他的事件,如onabortonerror等的情況下,你希望以不同的方式處理它們。

+0

感謝您的回覆。嗯,也許我忘了提及... jcrop應該加載時,圖片完全加載。 – Andrew

相關問題