JCrop,如何清除所有div宽度/高度标记?

时间:2012-09-04 05:39:48

标签: javascript jquery html image-uploading jcrop

我有一个配置文件图片系统,允许使用jCrop进行图像裁剪。我注意到如果用户经历了几次这样的过程,裁剪尺寸不能正确计算,因为之前的图像仍然存在。我已经尝试了API中的destroy()方法,但是这并没有清除.jcrop-holder div及其子图像元素的图像源。

我怎样才能轻易摆脱这种情况?感谢。

2 个答案:

答案 0 :(得分:2)

对你的情况作出一些巨大的假设,我决定你可以尝试这样的事情:$(function(){$(​'.jcrop-holder').removeAttr("style");​​​​​​​​​});​​​​​

如果那不是你需要的,你应该给我们更多信息!

答案 1 :(得分:1)

我对旧版本的jCrop有类似的问题,并创建了一个自定义销毁函数。以下是它的要点:

function crop_reset()
  {
  //Reset coordinates of thumbnail preview container
  $('#crop_preview').data("coords.x", 0);
  $('#crop_preview').data("coords.y", 0);
  $('#crop_preview').data("coords.w", 0);
  $('#crop_preview').data("coords.h", 0);

  //Reset src of jcrop img and copies bound to page specific full size and preview divs
  $("#crop, #crop_preview, .jcrop-holder img").attr("src", ""); 
  }

function crop_start()
  {
  //Initialize and remove previous jCrop containers using load event callback
  $('#crop').Jcrop({
  onChange: showPreview,
  onSelect: showPreview,
  onLoad: hidePreview,
  aspectRatio: 1,
  setSelect: [0, 0, 50, 50],
  minSize: [50, 50],
  allowResize: false,
  allowMove: true
  },function(){$(".jcrop-holder").not(":last").remove();});


  //Remove previous jCrop containers using timer if callback is not supported
  /*
  window.setTimeout(function noblank(){
    $(".jcrop-holder").not(":last").remove();
    }, 1000);
  */
  }
相关问题