jquery旋转插件抛出未捕获的异常

时间:2011-06-06 15:04:22

标签: jquery jquery-plugins rotation image-manipulation

我在实现jquery rotate插件时遇到了问题。我这样实现它:

var iDirection = 90;
var dImg = $("<img/>")
     .addClass('defect-image')
     .attr({src: $(this).attr('IMAGE_PATH')})
     .load(function(){
                //do stuff if img loads without errors
             })
             .error(function(){
                $(this).attr({src: 'img/missing.jpg' });
             })
             .rotate( iDirection )
             .appendTo( '.image-container' );

我得到的错误是:

 Error: uncaught exception: 
 [Exception... "Component returned failure code: 
 0x80040111 (NS_ERROR_NOT_AVAILABLE) 
 [nsIDOMCanvasRenderingContext2D.drawImage]"  nsresult: "0x80040111
 (NS_ERROR_NOT_AVAILABLE)"  
 location: "JS frame :: http://my.domain.com/js/jquery.rotate.js :: anonymous :: line 51"  data: no]

我需要帮助解密此错误。我无法弄清楚我对这个实现做错了什么。我也尝试过(没有运气):

.rotate({angle: iDirection })

1 个答案:

答案 0 :(得分:1)

如果我是你,我会调用“.rotate()” in 处理程序或“成功”处理程序:

var dImg = $("<img/>")
 .addClass('defect-image')
 .attr({src: $(this).attr('IMAGE_PATH')})
 .load(function(){
            //do stuff if img loads without errors
         })
 .success(function() { dImg.rotate(iDirection); })

编辑 - 这似乎是一个错误的jQuery插件(this one)的情况。您可能希望深入了解该项目的“问题”列表,看看其中一个修补版本是否有用,或者您可以选择其他插件。