[英]cannot change width+height of image by javascript
我动态上传图片。 我的代码也应针对IE9运行,并且在以下代码中,我仅关注IE9:
<!doctype html>
<html>
<head>
<!-- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> -->
<link href='http://fonts.googleapis.com/css?family=PT+Sans:400italic' rel='stylesheet' type='text/css'>
<link href='http://fonts.googleapis.com/css?family=PT+Sans' rel='stylesheet' type='text/css'>
<link href='http://fonts.googleapis.com/css?family=PT+Sans:700' rel='stylesheet' type='text/css'>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js"></script>
<title>Image preview example</title>
<script type="text/javascript">
var loadImageFile = (function () {
if (navigator.appName === "Microsoft Internet Explorer") {
return function () {
$("#id_image").width(300);
$("#id_image").height(300);
$("#id_image").css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image)");
document.getElementById("id_image").filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.getElementById("imageInput").value;
$("#id_image").width(320); // ****** Problematic line
$('#id_image").height(350); // ****** Problematic line
}
}
})();
</script>
<style type="text/css">
</style>
</head>
<body>
<form name="uploadForm">
<p><input id="imageInput" type="file" name="myPhoto" onchange="loadImageFile();" /><br />
</form>
<img id="id_image" src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs%3D" onmousedown="return false" alt="Your picture"/>
</body>
</html>
为什么我必须在以下行之前声明width + height:document.getElementById(“ id_image”)。filters.item(“ DXImageTransform.Microsoft.AlphaImageLoader”)。src = document.getElementById(“ imageInput”)。value?
我无法放置线(在星号上标记: **问题线),因为它不会更改宽度和高度。
我该如何更改宽度和高度?
谢谢 :)
更改图像大小时会有延迟,直到它在屏幕上更改为止。
您可以认为此问题已关闭。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.