Javascript 在jQuery中获取Imagesize
我想在jquery中获得imagesize,我有以下代码。它工作到了Javascript 在jQuery中获取Imagesize,javascript,jquery,Javascript,Jquery,我想在jquery中获得imagesize,我有以下代码。它工作到了 alert (v); 我想知道当v实际上包含一个值时,其余部分有什么问题 var v = $('#xxx input').val(); alert (v); var newImg = new Image(); newImg.src = v; var height = newImg.height; var width = newImg.width; alert ('The im
alert (v);
我想知道当v实际上包含一个值时,其余部分有什么问题
var v = $('#xxx input').val();
alert (v);
var newImg = new Image();
newImg.src = v;
var height = newImg.height;
var width = newImg.width;
alert ('The image size is '+width+'*'+height);
谢谢
Jean假设#xxx是您的输入容器id,您的代码应该可以工作:
<div id="xxx" align="center">
<input name="test" value="/images/image1.jpg" />
</div>
Chrome更新
<script type="text/javascript">
var newImg = new Image();
$(function() {
var v = $('#xxx input').val();
alert(v);
newImg.src = v;
setTimeout(function() {
var height = newImg.height;
var width = newImg.width;
alert ('The image size is '+width+'*'+height);
}, 1000);
});
</script>
var newImg=新图像();
$(函数(){
var v=$(“#xxx输入”).val();
警戒(五);
newImg.src=v;
setTimeout(函数(){
var高度=新高度;
变量宽度=新img.width;
警报('图像大小为'+宽度+'*'+高度);
}, 1000);
});
您在提醒图像时是否收到了正确的图像URL
我的第一个想法是将第一行更改为:
var v = $('#xxx').val();
此时,您正在选择ID为“xxx”的元素中的输入元素,但您希望具有ID为“xxx”的元素
编辑:另一个想法:
var v = $('#xxx input').val();
document.body.appendChild((function() {
var newImg = document.createElement("img");
newImg.src = v;
newImg.id = "newImg";
return newImg;
})());
var height = $("#newImg").attr("height");
var width = $("#newImg").attr("width");
alert('The image size is '+width+'*'+height);
您需要等待图像加载
var v = $('#xxx input').val();
alert (v);
var newImg = new Image();
newImg.onload = function() {
var height = this.height;
var width = this.width;
alert ('The image size is '+width+'*'+height);
}
newImg.src = v;
编辑:将
src
分配移到末尾。获取图像大小的代码并不总是有效。图像以异步方式加载,因此高度和宽度不会立即可用。您将需要以下内容:
var newImg = new Image();
var height, width;
newImg.onload = function() {
height = newImg.height;
width = newImg.width;
window.alert('The image size is '+width+'*'+height);
};
newImg.src = v;
#xxx是输入字段,该值被传递到var v,并提醒您签出更新的脚本,应在chrome上工作,需要添加延迟,当您希望获得正确的v值时进行更改,并且只有一个输入字段10分钟才能加载图像?我们在这里谈论的形象有多大?还是取决于你的连接速度?