取到按钮的位置坐标,还有长度和高度,然后把层定位到那就行了不建议用层,因为遇到iframe或杠架or select 就显示不完整了方案一: 提交后动态改变按钮的值: btnSubmit.value="正在处理数据...." 同时解除单击事件,可以直接disabled了方案二:如果一定要像你做的那样,用popup来做,满窗口大小,用代码控制显示隐藏

解决方案 »

  1.   

    在DIV里面放上一个IFRAME就可以了..
    我们也做过这个东西,也遇到这样的问题,就是这样解决的哦!!
      

  2.   

    toP:zhaoxiaoyang(梅雪香@hisoft)
    不错,就是这样!:取到按钮的位置坐标,还有长度和高度,然后把层定位到那就行了关键是调用的函数如何做?
    我的问题就是如何写!只剩这样步了!
    我不会,各位我查过资料,我确实做不出来!
    另外你说的那些情况我就更没想了 , :( !痛苦!to:my_randy(小何)
    谢谢!
    我现在只是实现给客户一个提示,要是用<iframe src="挡住.htm">
    我还要写个 挡住.htm 那还有加个html,有些不值!
      

  3.   

    <style>
    #div1
    {
    background-color:red;width:200px;height:200px;
    position:absolute;
    }
    </style>
    <script>
    function set(obj)
    {
      var div=document.getElementById('div1');
      div.style.left=obj.offsetLeft;
      div.style.top=obj.offsetTop;
    }
    </script>
    <body>
    <input type=button value=click id="btn" onclick="set(this)"><div id="div1"></div>
    </body>
      

  4.   

    to:
    vivianfdlpw() 没想到offsetLeft是这样用的!
    白看了那么多的代码!很感谢!
      

  5.   

    to:vivianfdlpw() 
    老大:你的方法在我的页面没用:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <style>
    #div1
    {
    background-color:red;width:200px;height:200px;
    position:absolute;
    }
    </style>
    <script>
    function set(obj)
    {
      var div=document.getElementById('div1');
      div.style.left=obj.offsetLeft;
      div.style.top=obj.offsetTop;
    }
    </script>
    <title>无标题文档</title>
    </head><body>
    <table width="200"  border="1" align="center" cellpadding="1" cellspacing="1">
      <tr>
        <th scope="col">&nbsp;</th>
        <th scope="col">&nbsp;</th>
        <th scope="col">&nbsp;</th>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr>
        <td height="12">&nbsp;</td>
        <td><input type=button value=click id="btn" onclick="set(this)"><div id="div1"></div></td>
        <td>&nbsp;</td>
      </tr>
    </table>
    </body>
    </html>
      

  6.   

    我得是个简单的提交表单,在table里的!
    我把代码改了一下,把那些繁琐的<input >都去了!
      

  7.   

    <script>
    function set(obj)
    {
      var div=document.getElementById('div1');
      div.style.left=getLeft(obj);
      div.style.top=getTop(obj);
    }
    function getLeft(obj)
    {
      var temp=obj.offsetLeft;
      while(obj.offsetParent)
      {
        temp+=obj.offsetParent.offsetLeft;
        obj=obj.offsetParent;
      }
      return temp;
    }
    function getTop(obj)
    {
      var temp=obj.offsetTop;
      while(obj.offsetParent)
      {
        temp+=obj.offsetParent.offsetTop;
        obj=obj.offsetParent;
      }
      return temp;
    }
    </script>
      

  8.   

    层是可以定位的!
    我以为不行了,所以根据:zhaoxiaoyang(梅雪香@hisoft) ( ) 信誉:100 
    >> 方案二:如果一定要像你做的那样,用popup来做,满窗口大小,用代码控制显示隐藏做了这样个东西<script language="JavaScript">
    var oPopup = window.createPopup();
    var oPopBody = oPopup.document.body;
    oPopBody.style.backgroundColor = "lightyellow";
    oPopBody.style.border = "solid black 1px";
    oPopBody.innerHTML = "<center><br><br><br>正在保存……</center>";function doOK()
    {
    document.frmPost.submit();
    var thisBody = window.document.body;
    oPopup.show(0, 0, thisBody.offsetWidth,thisBody.offsetHeight, thisBody);
    }
    </script>看样子还过得去,只是当我点击标题栏的时候就没了,老大们帮我看看加点什么?
      

  9.   

    function getAbsLeft(obj){ //得到对象的绝对x坐标
        var myLeft=0;
        do myLeft+=obj.offsetLeft; while(obj=obj.offsetParent);
    return myLeft;
    }
    function getAbsTop(obj){ //得到对象的绝对y坐标
        var myTop=0;
        do myTop+=obj.offsetTop; while(obj=obj.offsetParent);
    return myTop;
    }
      

  10.   

    是的!可以实现!我只是根据zhaoxiaoyang(梅雪香@hisoft) ( ) 信誉:100 
    >> 方案二:如果一定要像你做的那样,用popup来做,满窗口大小,用代码控制显示隐藏做了这样个东西<script language="JavaScript">
    var oPopup = window.createPopup();
    var oPopBody = oPopup.document.body;
    oPopBody.style.backgroundColor = "lightyellow";
    oPopBody.style.border = "solid black 1px";
    oPopBody.innerHTML = "<center><br><br><br>正在保存……</center>";function doOK()
    {
    document.frmPost.submit();
    var thisBody = window.document.body;
    oPopup.show(0, 0, thisBody.offsetWidth,thisBody.offsetHeight, thisBody);
    }
    </script><input type=button value=click id="btn" onclick="doOK()">
    看样子还过得去,只是当我点击标题栏的时候就遮挡就没了,老大们帮我看看加点什么?
      

  11.   

    让他只有
    oPopup.hidden();
    的时候来消失!