本帖最后由 beatil123456 于 2010-11-18 16:25:31 编辑

解决方案 »

  1.   

    master:<table id=master ..
      

  2.   


    这是我从别处下的代码,document.write里本来就没有''这些东西的..不管怎样,在ie7下很正常啊,把document.write里的属性都加上''就能可以了吗?
      

  3.   

    我把var master = new Object('element') 替换成var master = document.getElementsById("master")在IE下也非常正常..
      

  4.   

    看到你都发了n 次贴了,不忍心,帮你改了一下!现在兼容IE,FF了! css 你自己再改一下!<script language="javascript" type="text/javascript"> 
    function moveAlong(layerName, paceLeft, paceTop, fromLeft, fromTop)
    {
    clearTimeout(master.timer)
    if(master.curLeft != fromLeft)
    {
    if((Math.max(master.curLeft, fromLeft) - Math.min(master.curLeft, fromLeft)) < paceLeft){master.curLeft = fromLeft;}
    else if(master.curLeft < fromLeft){master.curLeft = master.curLeft + paceLeft;}
    else if(master.curLeft > fromLeft){master.curLeft = master.curLeft - paceLeft;}
    masterDiv.style.left = master.curLeft+"px";}
    if(master.curTop != fromTop)
    {
      if((Math.max(master.curTop, fromTop) - Math.min(master.curTop, fromTop)) < paceTop)
      {master.curTop = fromTop}
    else if(master.curTop < fromTop){master.curTop = master.curTop + paceTop;}
    else if(master.curTop > fromTop){master.curTop = master.curTop - paceTop;}
    masterDiv.style.top = master.curTop+"px";}
    master.timer=setTimeout(function(){ moveAlong(layerName, paceLeft, paceTop, fromLeft, fromTop);},30)
    }function setPace(layerName, fromLeft, fromTop, motionSpeed)
    {master.gapLeft = (Math.max(master.curLeft, fromLeft) - Math.min(master.curLeft, fromLeft))/motionSpeed
    master.gapTop = (Math.max(master.curTop, fromTop) - Math.min(master.curTop, fromTop))/motionSpeed
    moveAlong(layerName, master.gapLeft, master.gapTop, fromLeft, fromTop)
    }
    function FixY()
    {
    masterDiv.style.top =  (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop)+90 +"px";

       
    window.onerror = function(){}
    var expandState = 0;function expand(){ if(expandState == 0){setPace('master', 0, 10, 10); if(ie){document.menutop.src = 'Images/menui.jpg'}; expandState = 1;}
    else{setPace('master', -186, 10, 10); if(ie){document.menutop.src='Images/menuo.jpg'}; expandState = 0;}
    }
    document.write("<style type=text/css>#master {LEFT: -186px; POSITION: absolute; TOP: 90px; VISIBILITY: visible; Z-INDEX: 999}</style>")
    document.write("<table id=master  width='218px' border='0' cellspacing='0' cellpadding='0'><tr><td></td><td rowspan='2' valign='top' style='width:30px;height:400px;background-color:Red;' onmouseover='expand()'><img id=menu  border=0 height=100 name=menutop src=Images/menuo.jpg width=30></td></tr>");
    document.write("<tr><td valign='top'><table width='101%' border='0' cellpadding='0'><tr><td height='400' valign='top'><table width=100% height='100%' border=0 cellpadding=0 cellspacing=5 bordercolor='#666666' bgcolor=#006699 style=FILTER: alpha(opacity=90)><tr>");
    document.write("<td align='center' bordercolor='#ecf6f5'><font color=FFFFFF>ONLINE SERVICES<br><font size=+0.5><strong>在线服务中心</strong></font></font& gt;</td></tr><tr><td valign='top' bordercolor='#ecf6f5' align='center'>");
    document.write("<iframe width='100%' marginwidth='0' marginheight='0' height='350' src='/kfu.html' frameborder=0 allowTransparency='true'></iframe></td></tr></table></td></tr></table></td></tr></table>");
    var ie = !!document.all;
    var master ={};
    master.curLeft = -186; master.curTop = 10;
    master.gapLeft = 0; master.gapTop = 0;
    master.timer = null;
    var masterDiv = null;
    (function(){
    masterDiv = document.getElementById("master");
    setInterval('FixY()',100);
    })();
    </script>