[问题] javascript class

楼主: lonelytea (霸气逼人)   2015-06-15 11:24:17
新手问题 (改了点内文)
<script type="text/javascript">
//事件三 随机图片产生
var a;
function myFunction() {
// 乱数
random = Math.floor(Math.random() * 500)
//新增图片
var img = new Image();
img.src = "4.jpg";
a = img.className = "op2";
img.style.width = "50px";
img.style.height = "50px";
// 抓的到className alert(img.className);
alert(a);
//图片出现的位置
document.body.appendChild(img);
img.style.position = "absolute";
img.style.top = 8 + "px";
img.style.left = random + "px";
}
setInterval("myFunction()", 1000);
alert(a);
</script>
我var a定义在广域
但为何只能alert function内的
外面的抓不到值
作者: NOXI (EZway)   2015-06-15 11:34:00
window.onload / DOMContentLoaded ?
作者: tw0517tw (无冬夜)   2015-06-15 11:55:00
setInterval第一次执行是马上还是1秒后?
作者: lonelycoffee (重新开始)   2015-06-15 12:37:00
1秒后
作者: tooto1985 ( )   2015-06-15 14:07:00
因为你1秒后才执行myFunction,但程式并不会停下来等1秒所以这个时候你的a一定是undefined遇到setTimeout,setInterval注意这种会造成异步执行!
楼主: lonelytea (霸气逼人)   2015-06-15 21:59:00
那请问我该如何去抓到newimg的left top毕竟无法用class 跟id抓
作者: s25g5d4 (function(){})()   2015-06-15 22:54:00
绑 onload
楼主: lonelytea (霸气逼人)   2015-06-16 02:05:00
绑了 失败 哈哈哈
作者: MangoTW (不在线上)   2015-06-16 03:15:00
你到底是LonelyTea还是LonelyCoffee?
楼主: lonelytea (霸气逼人)   2015-06-16 08:20:00
一个是我的帐号一个是我弟的 有时候没登出就直接用了
作者: tooto1985 ( )   2015-06-16 09:02:00
你需要先执行myFunction()不用setInterval因该就可抓到

Links booklink

Contact Us: admin [ a t ] ucptt.com