首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JCrop的IE问题

JCrop的IE问题
EN

Stack Overflow用户
提问于 2012-06-06 22:35:36
回答 3查看 6.1K关注 0票数 3

我在我的aspx页面中使用了jcrop:

代码语言:javascript
复制
<script type="text/javascript" src="../../Scripts/js/jquery.Jcrop.min.js"></script>
<link rel="Stylesheet" href="../../Scripts/css/jquery.Jcrop.min.css" />

下面是我的JCrop声明:

代码语言:javascript
复制
 <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>

这是我的.NET镜像:

代码语言:javascript
复制
<asp:Image runat="server" ID="PhotoPreviewImage" />

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

这在Chrome上运行得很好,但在IE9上就不行了(我甚至连十字准线都没有)。

我使用的是jquery.Jcrop.min.js v0.9.10 (内部版本:20120429)和jQuery v1.7.1 jquery.com

如何在IE中实现此功能?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-07 01:36:44

我过去在IE中使用JCrop时遇到了一些问题。我通过向options对象添加"onSelect“和"onRelease”事件解决了这个问题。我不知道这对你的情况是否有帮助,但值得一试。我的代码看起来像这样:

.Net

代码语言:javascript
复制
<asp:Image ID="cropbox" runat="server" ImageUrl="Assets/images/blank.gif" />

Javascript:

代码语言:javascript
复制
<script>
$(document).ready(function () {
    var api = $.Jcrop('#cropbox', {
        aspectRatio: 1,
        onSelect: update,
        onChange: update,
        onRelease: update
    });
});

function update(c) {
    //Store coords here
}
</script>
票数 3
EN

Stack Overflow用户

发布于 2013-06-06 04:32:17

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

代码语言:javascript
复制
        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;});
        }
票数 7
EN

Stack Overflow用户

发布于 2013-10-16 06:39:05

这无疑修复了IE 10兼容模式的初始化问题。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10916412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档