我试图获取外部图像的宽度和高度,并使用宽度和高度在我的页面中设置Div的宽度和高度。
我可以很容易地获得图像的宽度和高度,但是出于某种奇怪的原因,我无法使用宽度/高度作为我的div!
为了更好地解释这一点,我创造了这个小提琴:
https://jsfiddle.net/qtc3q6sd/2/
这是我的全部代码:
var img = new Image();
img.onload = function() {
alert(this.width + 'x' + this.width);
$("#mydiv").css("width", $(this.width()));
$("#mydiv").css("height", $(this.height()));
}
img.src = 'https://www.google.co.uk/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';
有人可以就此问题提出建议吗?
提前致谢。
答案 0 :(得分:3)
你的宽度和高度都是错误的。
var img = new Image();
img.onload = function() {
alert(this.width + 'x' + this.height);
$("#droppable").css("width", this.width);
$("#droppable").css("height", this.height);
}
img.src = 'https://www.google.co.uk/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';
请参阅jsfiddle。
答案 1 :(得分:1)
代码逻辑没有错。只是语法错误。
它应该是$(this).width()而不是$(this.width())
var img = new Image();
img.onload = function() {
alert(this.width + 'x' + this.width);
$("#mydiv").css("width", $(this).width());
$("#mydiv").css("height", $(this).height());
}
img.src = 'https://www.google.co.uk/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';
答案 2 :(得分:1)
语法有点偏,
试试这个
var img = new Image();
img.onload = function() {
alert(this.width + 'x' + this.height);
$("#mydiv").css("width", this.width);
$("#mydiv").css("height", this.height);
}
img.src = 'https://www.google.co.uk/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';
答案 3 :(得分:-1)
这是您的解决方案。在回调函数中, calendar.set(Calendar.YEAR, 2017);
是图像
this
答案 4 :(得分:-1)
您的代码有两个错误。
首先,在onload函数内部'这个'代表图像对象。您试图调用图像的with()和height()函数,但它们不是函数,它们是属性。您必须丢失'()'。
其次,当您尝试执行此操作$(this.width())
时,您将宽度值封装在jQuery对象中。您不需要,只需使用width属性this.width
。
以下代码可以使用:
var img = new Image();
img.onload = function() {
alert(this.width + 'x' + this.width);
$("#mydiv").css("width", this.width);
$("#mydiv").css("height", this.height);
}
img.src = 'https://www.google.co.uk/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';