IE中的Javascript Image onload功能

时间:2011-12-05 12:20:30

标签: javascript

我正在尝试将图片放在屏幕中间,但在IE中它无法正常工作

这是我的示例代码。

function showMap(event, url, element)
{
        var map_container = $('map_container'),
        viewport = document.viewport.getDimensions(),
        offset = $(element).viewportOffset(),
        top = offset.top + getScrollTop() + $(element).getHeight() + 10,
        image_mapgross = $('image_mapgross');
        image_mapgross.onload = middleMap;
        image_mapgross.src = url;
        map_container.style.cssText = "display:block;left:10px;top:" + top + "px;";

        Event.stop(event);
        //Event.observe(map_container, 'click', stopEvent);
}

IE中,函数middleMap永远不会被调用。

function middleMap() {

    var map_container = $('map_container');
    middle(map_container);
}

2 个答案:

答案 0 :(得分:0)

使用writeAttribute()方法使用prototype

设置属性
 $('image_mapgross').writeAttribute('src', url);

OLD: 你需要先获得一个DOM元素

image_mapgross = $('image_mapgross').get(); //or  $('image_mapgross')[0]

如果要使用点表示法设置事件和属性

image_mapgross.onload = middleMap;
image_mapgross.src = url;

答案 1 :(得分:0)

如果我像这样设置源

,在IE中

image_mapgross.setAttribute("src", url);

然后它有效。