Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 求图像的真实高度和宽度_Jquery_Image_Size - Fatal编程技术网

Jquery 求图像的真实高度和宽度

Jquery 求图像的真实高度和宽度,jquery,image,size,Jquery,Image,Size,这可能是一个非常愚蠢的问题。我让用户在使用imgAreaSelect jQuery插件上传照片时裁剪自己的照片。正如许多用户在这里和其他地方发现的那样,当使用CSS调整大小时,裁剪没有正确选择。谢天谢地,imgAreaSelect可以通过imageHeight和imageWidth处理这个问题。这里已经有一个答案,让我开始。遗憾的是,我还不能在那里发表评论 我的问题是找到附加图像的真实高度和宽度。我尝试了各种方法来获取它,但每次控制台输出都未定义originalHeight/originalWi

这可能是一个非常愚蠢的问题。我让用户在使用imgAreaSelect jQuery插件上传照片时裁剪自己的照片。正如许多用户在这里和其他地方发现的那样,当使用CSS调整大小时,裁剪没有正确选择。谢天谢地,imgAreaSelect可以通过imageHeight和imageWidth处理这个问题。这里已经有一个答案,让我开始。遗憾的是,我还不能在那里发表评论

我的问题是找到附加图像的真实高度和宽度。我尝试了各种方法来获取它,但每次控制台输出都未定义originalHeight/originalWidth,如下所示

第一个解决方案是:

var imageSize = $("#uploadImage");

var originalHeight = imageSize.naturalHeight;
var originalWidth = imageSize.naturalWidth; 
第二个是this.width/this.height,可以在这里找到:stackoverflow.com/questions/318630:

var imageSize = $("uploadImage")[0]; 
var originalWidth, originalHeight;
$("<img/>") 
    .attr("src", $(imageSize).attr("src"))
    .load(function() {
        originalWidth = this.width;  
        originalHeight = this.height; 
    });
试试这个:

    var img = $("img")[0]; // Get my img elem
    var pic_real_width, pic_real_height;
    $("<img/>") // Make in memory copy of image to avoid css issues
    .attr("src", $(img).attr("src"))
    .load(function() {
        pic_real_width = this.width;   // Note: $(this).width() will not
        pic_real_height = this.height; // work for in memory images.
    });

您可能希望将$document.readyfunction{替换为$window.loadfunction{谢谢你的回复@user3558931。虽然结果相同。就绪/加载不会对获取图像的宽度/高度产生影响。至少我不会认为哪个是哪个?相同的结果还是你不这么认为?看起来只是imgAreaSelect和max width。除非我先调整图像的大小,否则这看起来不会起作用。谢谢你的回复是的!我试过了,但结果是一样的。你在不同的浏览器中测试过吗?比如,Chrome,FF,结果是一样的吗?是的,在所有现代浏览器中,最终的图像都是一致关闭的
    var img = $("img")[0]; // Get my img elem
    var pic_real_width, pic_real_height;
    $("<img/>") // Make in memory copy of image to avoid css issues
    .attr("src", $(img).attr("src"))
    .load(function() {
        pic_real_width = this.width;   // Note: $(this).width() will not
        pic_real_height = this.height; // work for in memory images.
    });