今天写了一段JS代码,功能是向一个DIV中插入一组img,单击某个img就跳转到相应的页码,代码大致如下(省略了移动位置的代码):
var border = null;
var divimage 
= document.getElementById("divcontainer");

for (var i = 0;i < maxcount; i++)
{
    border 
= document.createElement("img");
    border.id 
= "lborder" + i;
    border.src 
= "images/border.gif";
    border.alt 
= "" + i + "";
    border.onclick 
= function() {ToSelectedPage(i);};  
    divimage.appendChild(border);
}
看起来似乎很简单,不过运行后我就发现虽然img的alt属性是对的,但单击后,总是跳转到最后一页,而且不伦我换什么变量到那里都一样,甚至把 border换成数组也一样。无奈,虽然想不通为什么会这样,也只好屈服于现实,把单击事件改了下:
border.onclick = function() {
                var pageindex = this.id.substring(7);
                ToSelectedPage(parseInt(pageindex ));
            };

这样倒是好了,可总觉得看着不舒服,这是js的bug,还是我对js理解不深?
posted on 2006-12-29 16:59  非我  阅读(343)  评论(3编辑  收藏  举报