我正在尝试创建一个读取图像宽度和高度的脚本,如果图像高度大于600,则将html div的高度设置为600.如果高度小于600,则div的高度将是图像的高度。
这是我一直在尝试的。
JavaScript的:
jQuery(document).ready(function($) {
var kuvakorkeus = $(".karttakuva img").css('height');
var kuvaleveys = $(".karttakuva img").css('width');
if (kuvakorkeus > 600){
$(".karttakuva").css('height',600);
}
else {
$(".karttakuva").css('height',kuvakorkeus);
}
});
HTML:
<div id="content">
<div class="relative">
<div class="karttakuva">
<img src="http://img42.imageshack.us/img42/8954/tylypahkanportit.png" class="imgMap" width="1297" height="883"/>
<a style="display:block" href="http://justinbieber.com"><div class="marker" id="france" data-coords="306,513"></div></a>
<a style="display:block" href="http://tylypahka.tk/kartta"><div class="marker" id="lol" data-coords="1031,237"></div></a>
</div>
</div>
</div>
标记属于图像平移脚本,但我认为它们不会搞砸。问题是,即使图像的高度为2000,它仍然会选择其他动作,并将div的高度设置为与图像的高度相同。
以下是页面:http://tylypahka.tk/kartta/tylypahka
我在这里遗漏了什么吗?
答案 0 :(得分:7)
这:
$(".karttakuva img").css('height');
仅为您提供CSS中指定的内容。
您可能需要$(".karttakuva img").height()
,即图像的高度。
请注意,如果您想要给出一个高度的最大值,您可以在css max-height:600px
中指定。这也适用于图像(它们按宽度/高度比例缩放)。
答案 1 :(得分:3)
更改:
var kuvakorkeus = $(".karttakuva img").css('height');
var kuvaleveys = $(".karttakuva img").css('width');
到
var kuvakorkeus = $(".karttakuva img").height();
var kuvaleveys = $(".karttakuva img").width();
.css('height')
会将 x px
作为结果(如css样式表中所示)