jcrop无法使用Internet Explorer 8

时间:2012-08-06 14:50:56

标签: internet-explorer-8 jcrop

我正在使用Jcrop在我的网络应用程序中裁剪图像。除IE8外,它适用于所有浏览器(IE9,FF,Chrome,Safari)。具体来说,Windows 7附带的8.7.6。

我正在使用Jcrop v 0.9.9。

在Firefox中工作。我看到一个像

这样的DOM结构

img id ...“style =”display:none“

div class =“jcrop-holder”......

.........................
img ........ 

DIV

在IE 8.7.6中,我看到像

这样的DOM

img id ...“style =”display:none“

----空白-------

基本上,jcrop-holder没有注入DOM,而原始图像就像其他浏览器一样被隐藏。

你能来吗?对此有所了解?如果你知道IE的任何变通方法。

感谢您的帮助。

将jcrop附加到目标图像的Javascript代码

function attachJcropToModal()
{
    jQuery(function($)
    {
        $('#jcrop_target').Jcrop(
                {
                    aspectRatio: '<%=defaultAspectRatioValue%>',
                    minSize: [0,0],
                    onChange: updateCoords,
                    onSelect: updateCoords
                },
                function ()
                {
                    jcrop_api = this;
                }
        );
    });
}

function updateCoords(c)
{
    $('#w').val(Math.round(c.w*adjFactor));
    $('#h').val(Math.round(c.h*adjFactor));

    $('#x1').val(Math.round(c.x*adjFactor));
    $('#y1').val(Math.round(c.y*adjFactor));
}

Html图像显示代码

                <div class="cropperContainer">
                    <table>
                        <tbody><tr>
                            <td class="main">
                                <img id="jcrop_target" src="<%=imgSourceURL%>"<%=overriddenImageWidthAttr%> alt="" />
                            </td>
                        </tr>
                        </tbody></table>
                </div>

1 个答案:

答案 0 :(得分:0)

你的代码看起来不错,只有一件事!你不应该在aspectRatio十进制值周围使用''。

Jcrop Demo适用于IE8,对吗?

也许你应该试试Cropzoom。我在一个商业项目中使用过它,经过一些调整后,它在IE7 +,FF和Safari等方面非常适合我们......