alert(document.getElementById('pos').style.left);//看看是不是为0
var b=parseInt(document.getElementById('pos').style.left)+190;
centerLyr2 = new layerObject('Layer2','absolute',b,176,'visible');

解决方案 »

  1.   

    alert(document.getElementById('pos').style.left);//看看是不是为0centerLyr2 = new layerObject('Layer2','absolute',parseInt(document.getElementById('pos').style.left)+190 ,176,'visible');
      

  2.   

    把 new 去掉,然后试试上面的2种方法
      

  3.   


    document.getElementById('pos').style.left是一个字符串!需要parseInt()
      

  4.   

    centerLyr2 = new layerObject('Layer2','absolute',eval(document.getElementById('pos').style.left+190) ,176,'visible');
      

  5.   

    eval(parseInt(document.getElementById('pos').style.left)+190) 各位老兄,这样做仍然提示参数无效,确实很奇怪才拿上来问
      

  6.   

    centerLyr2 = new layerObject('Layer2','absolute',parseInt(parseInt(document.getElementById('pos').style.left)+190) ,176,'visible');如果再不行,只有明天问高手了
      

  7.   

    function layerObject(id,position,left,top,visibility) {this.obj = document.getElementById(id).style;
    this.obj.position = position;
    this.obj.pixelLeft =left;
    this.obj.pixelTop = top;
    this.obj.visibility = visibility;
    }
    }
    调用此函数
    centerLyr2 = new layerObject('Layer2','absolute',document.getElementById('pos').style.pixelLeft +190 ,176,'visible');这样子应该会对的!left-->pixelLeft
    top--->pixelTop