Javascript 动态加倍图像大小
我有一个令人尴尬的简单问题:如何在不硬编码宽度和高度属性的情况下以两倍大小显示图像?这是我尝试过的,但最后我不得不输入1000作为宽度和高度。我的功能有问题吗?谢谢Javascript 动态加倍图像大小,javascript,Javascript,我有一个令人尴尬的简单问题:如何在不硬编码宽度和高度属性的情况下以两倍大小显示图像?这是我尝试过的,但最后我不得不输入1000作为宽度和高度。我的功能有问题吗?谢谢 <img onload="double(self.id);" name="bigPic" id="bigPic" src="album1.jpg" height="1000" width="1000"/> function double(id) { var img = document.getE
<img onload="double(self.id);" name="bigPic" id="bigPic" src="album1.jpg" height="1000" width="1000"/>
function double(id) {
var img = document.getElementById(id);
var dblWdth = img.width * 2;
var dblHt = img.height * 2;
img.height = dblHt;
img.width = dblWdth;
}
您必须使用window.load函数来实现这一点
window.onload=function() {double("bigPic");
}
您必须使用window.load函数来实现这一点
window.onload=function() {double("bigPic");
}
这应该能奏效。
您可以使用windowonload方法来完成加载页面时需要完成的所有操作
这应该能奏效。
您可以使用windowonload方法来完成加载页面时需要完成的所有操作 如果您使用jquery,可以这样做:
<img name="bigPic" id="bigPic" src="album1.jpg" />
<script type="text/javascript">
$(document).ready(function () {
$("#bigPic")[0].width *= 2;
$("#bigPic")[0].height *= 2; // may not be necessary, see note
});
</script>
注意:如果不指定高度,高度会自动加倍。宽度也是如此。但我只在IE9和FF12上进行了测试。如果使用jquery,可以这样做:
<img name="bigPic" id="bigPic" src="album1.jpg" />
<script type="text/javascript">
$(document).ready(function () {
$("#bigPic")[0].width *= 2;
$("#bigPic")[0].height *= 2; // may not be necessary, see note
});
</script>
注意:如果不指定高度,高度会自动加倍。宽度也是如此。但我只在IE9和FF12上进行了测试。没有doubleself.id;但这是一个双重身份
这个
你可以通过这个,那会更简单
function double(img) {
img.height *= 2;
img.width *= 2;
}
不是双重身份证;但这是一个双重身份
这个
你可以通过这个,那会更简单
function double(img) {
img.height *= 2;
img.width *= 2;
}
您并不需要javascript来实现这一点。你可以用CSS来做
img {
zoom: 2;
-webkit-transform: scale(2);
-moz-transform: scale(2);
-ms-transform: scale(2);
-o-transform: scale(2);
transform: scale(2);
}
当然,这将使页面上所有图像的大小加倍。也许相反,您希望创建一个类,并将其分配给所有应该加倍的图像,或者找到其他方法仅选择这些图像。您还可以在鼠标悬停时将其设置为两倍大小,或者在某些浏览器中仅使用css进行动画放大 这并不需要javascript。你可以用CSS来做
img {
zoom: 2;
-webkit-transform: scale(2);
-moz-transform: scale(2);
-ms-transform: scale(2);
-o-transform: scale(2);
transform: scale(2);
}
当然,这将使页面上所有图像的大小加倍。也许相反,您希望创建一个类,并将其分配给所有应该加倍的图像,或者找到其他方法仅选择这些图像。您还可以在鼠标悬停时将其设置为两倍大小,或者在某些浏览器中仅使用css进行动画放大 旁注:您只需将其传递到函数double并保存对document.getelementbyidi的调用。如果删除高度和宽度属性,它将以其原始大小显示。然后,您可以使用javascript对其进行超大处理,而不知道它有多大。有趣的是:“double”在javascript中是一个保留字,不是函数名的好选择。@Okonomiyaki3000,很好的捕获,补充说明:您只需将其传递到函数double并保存对document.getelementbyidi的调用,如果删除高度和宽度属性,它将以其原始大小显示。然后,你可以使用javascript对其进行超大小处理,而不知道它有多大。有趣的事实是:“double”在javascript中是一个保留字,不是函数名的好选择。@Okonomiyaki3000,很好的捕获,superSizeme。是的,你是对的,但我代表dreamweaver说了为什么它必须与dreamweaver相关,它只是一个编辑器,但它显示了可以附加到元素的所有事件处理程序。dreamweaver中未显示的元素并不意味着它不存在。记事本也没有显示任何东西,那么我们能说什么呢?是的,你是对的,但我代表dreamweaver说,为什么它必须与dreamweaver相关,它只是一个编辑器。但是它显示了所有可以附加到元素的事件处理程序,dreamweaver中没有显示并不意味着它不存在。记事本也没有显示任何东西,那么我们能说什么呢?