无法引用图像id javascript
Cannot reference image id javascript
我有一个显示公告的PHP页面,文本中嵌入了一个图像。我在这里添加了简化代码。问题是,当我尝试更改图像的大小时,DOM无法引用该图像。在实际的文件中,如果我刚加载页面,则无法引用图像,但如果我导航回它(使用日期选择器),突然之间,Javascript的大小调整工作得很好。只是在第一次加载图像时不起作用。
function resizeImg () {
var w=document.getElementById("textImg").width;
var h=document.getElementById("textImg").height;
alert(h+" "+w);
if (w>300 || h>300) {
if (w>300) {
var factor=((300/w));
} else {
if (h>300) {
var factor=((300/h));
}
}
w*=factor;w=Math.round(w);
h*=factor;h=Math.round(h);
document.getElementById("textImg").style.width=w+"px";
document.getElementById("textImg").style.height=h+"px";
}
}//end FUNCTION
标头:
<?php
$pic="20130213.gif";
$blText="Yes, you heard right. Thats all we are going to have for dinner. Why? because cream of corn is good when you put sugar in it, with some pepper and butter. So, quit your complaining and eat the slop.";
?>
HTML:
<body>
<div id="bullText" class="tBorder">
<div class="tBorder" id="bullTextArea">
<?php
$file="../../Admin/aPages/upload/".$pic;
echo "<img id='textImg' class='textImage' src='".$file."' alt='no image' />";
echo $blText
?>
</div>
</div><!--BULL TEXT DIV-->
<?php
echo "<script>resizeImg ()</script>";
?>
</body>
您可能需要等待图像加载:
el = document.getElementById("textImg");
if (el.addEventListener){
el.addEventListener('load', resizeImg, false);
} else if (el.attachEvent){
//IE uses attachEvent
el.attachEvent('onload', resizeImg);
}
在此之前,您应该等待DOM就绪,否则document.getElementById可能一无所获。
你试过把js代码放在window.onload中吗?
(jsFiddle解决方案)
这里的问题是你正在尝试
var w=document.getElementById("textImg").height;
但这只有当你自己设定高度时才有效。否则,您需要使用以下选项之一:
var h = document.getElementById('someDiv').clientHeight;
var h = document.getElementById('someDiv').offsetHeight;
var h = document.getElementById('someDiv').scrollHeight;
clientHeight包括高度和垂直填充。
offsetHeight包括高度、垂直填充和垂直边框。
scrollHeight包括所包含文档的高度(在滚动的情况下会大于高度)、垂直填充和垂直边框。
来源:获取元素的高度
宽度当然也一样
相关文章:
- 通过ID JavaScript显示随机背景图像
- 如何为动态创建的元素分配唯一的id-Javascript
- 如何在主页的弹出窗口中从向导中的用户控制中获取ControlToValidate ID-javascript asp.n
- 如何使用innerHTML更改图像大小来给它一个id Javascript
- 为类中的所有元素提供单独的 Id Javascript
- 设置元素 id = javascript 函数
- 在 id javascript 上验证 submitHandler
- 循环生成唯一 ID JavaScript
- 我需要使用他们的Facebook id javascript将Facebook照片流放入我的应用程序中
- 在.id-javascript中选择.class
- parsing a url for the id - Javascript
- 使用数字id javascript处理html输入元素
- 缺少:在属性id-javascript之后
- 根据数组中对象的数量改变id (javascript/jquery)
- 在Id javascript中选择一个类
- 替换youtube嵌入iframe视频ID - Javascript
- 通过id javascript填充文本字段
- 无法引用图像id javascript
- 点击返回按钮id-JavaScript
- 检查输入的数字是否正确 按ID - JavaScript