IE的问题与JCrop

Lia*_*ath 3 asp.net jquery internet-explorer jcrop

我在我的aspx页面使用jcrop:

<script type="text/javascript" src="../../Scripts/js/jquery.Jcrop.min.js"></script>
<link rel="Stylesheet" href="../../Scripts/css/jquery.Jcrop.min.css" />
Run Code Online (Sandbox Code Playgroud)

这是我的JCrop声明:

 <script type="text/javascript">
    $(document).ready(function () {
        $('#' + options.ImageID).Jcrop({
            onChange: function (coords) {
                $('#' + options.HiddenID).val(coords.x + ',' + coords.y + ',' + coords.w + ',' + coords.h);
            },
            aspectRatio: 1
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的.NET镜像:

<asp:Image runat="server" ID="PhotoPreviewImage" />
Run Code Online (Sandbox Code Playgroud)

options变量是在后面的代码中创建的对象,用于将PhotoPreviewImage的ClientID传递给JS.

这在Chrome中效果很好,它在IE9中不起作用(我甚至没有得到十字准线).

我正在使用jquery.Jcrop.min.js v0.9.10(build:20120429)和jQuery v1.7.1 jquery.com

我怎样才能在IE中完成这项工作?

Jef*_*mer 7

我最终必须检测IE并使用两种格式之一进行初始化:

        var is_msie = /msie/.test(navigator.userAgent.toLowerCase());
        var jcrop_obj;

        if (is_msie) {
            jcrop_obj = jQuery.Jcrop('#img', {
                onSelect: jcrop_onEndCrop,
                minSize: [ 20, 20 ],
                setSelect: [ x, y, x2, y2 ],
                allowSelect: false
            });
        }
        else {
            jQuery('#img').Jcrop({
                onSelect: jcrop_onEndCrop,
                minSize: [ 20, 20 ],
                setSelect: [ x, y, x2, y2 ],
                allowSelect: false
            },function(){jcrop_obj = this;});
        }
Run Code Online (Sandbox Code Playgroud)