2013-01-23 148 views
2

我在我的.net Web應用程序中使用了裁剪。所有的瀏覽器都非常好用代碼。但是,IE顯示怪異的行爲。我嘗試了其他帖子,但他們要麼沒有幫助,要麼就是黑客。這裏是javascript代碼:jcrop與IE無法正常工作

jQuery(function ($) { 
       api = $('<%= "#" + target.ClientID %>').Jcrop({ 
        onChange: showCoords, 
        onSelect: showCoords, 
        onRelease: clearCoords, 
        aspectRatio: 1 
       }, function() { 
        api = this; 
        api.setSelect([10, 10, 110, 110]); 
        api.setOptions({ bgFade: true }); 
        api.ui.selection.addClass('jcrop-selection'); 
       }); 

      }); 

在第一次嘗試IE無法加載虛線,但有時在第二嘗試它的作品。似乎是一種時間問題或圖像加載問題...謝謝

+0

您是否曾經找到過解決方案?我也有同樣的問題。 –

+3

對不起,我沒有更新我的文章。其實我發現了這個問題,所以我首先會提到IE有什麼問題,然後描述我的解決方案。正如我在問題中所說的是一個時間問題。 IE在從服務器獲取圖片之前加載腳本。爲了解決這個問題,你必須等到圖片下載:$('<%=「#」+ target.ClientID%>')。load(function(){api = $('<%=「#」+ target .ClientID%>')。Jcrop({...和目標很明顯是我的asp:圖像控制,希望有幫助:) – beebee

+0

啊,我明白了,謝謝beebee。症狀看起來是一樣的,但是我的原因是目標沒有顯示(我的Jcrop界面被隱藏,直到圖像被加載)。將它更改爲'visibility:hidden'而不是'display:none'(連同一些定位)修復了它。 –

回答

1

其實我發現了這個問題,所以我會首先提到IE有什麼問題,然後將描述我的解決方案。正如我在問題中所說的是一個時間問題。 IE在從服務器獲取圖片之前加載腳本。

要解決,你必須等待,直到圖片被下載:

$('<%= "#" + target.ClientID %>').load(function() { 
    api = $('<%= "#" + target.ClientID %>').Jcrop({... 

和目標顯然是我asp:Image控制。

+0

這是不是使用jcrop的文檔化的方式,請閱讀文檔 – Brunis

+0

@Brunis請澄清.jCrop有[即特定的錯誤](http://stackoverflow.com/搜索?q =%5Bjcrop%5D%5Bie%5D +是%3Aanswer)這不是其文檔的一部分。 –