不知道你是不是这个意思,大概思路,要区分浏览器类型和版本
//这些写在你要显示的那个帧中,当然那个真要存在
try{
var code=parent.frame1.document.all['divID'].outerHTML;
document.write(code);
...var mydiv=document.all['divID'];
mydiv.style.top=...;
mydiv.style.left=...;
}
catch(x){alert('没有定义层!')

解决方案 »

  1.   

    我的意思是说:
        在第一个帧中定义一个层,层开始是隐藏的,这个帧中只显示一条图片,当鼠标单击图片时显示该层,而该层是跨帧显示,即显示在在第二个帧的指定位置上,当然控制层显示的javascript脚本只能使用在第一个帧中(定义层的帧),而无法使用在第二个帧中(因为第二个帧中链接的是其他页面,有很多,不可能挨个页面写入定义显示该层的javascript脚本),所有的脚本必须在第一个帧中完成.
      

  2.   

    try:function showframeDiv(){
       var loELement = parent.youFrameName.document.createElement("DIV");
       loELement.id = "showImgDiv"
       loELement.innerHTML = '<img......>';
       parent.youFrameName.document.body.insertBefore(loELement);
    }
      

  3.   

    思路是:在当前页面使用脚本在你需要的帧里创建一个用来显示的DIV.
    理论上可以的,呵呵,代码你还是自己写写吧。
      

  4.   

    呵呵,上午有事刚过来,不好意思,试试吧,好的话,我要100分呀! :)-- index.htm --- 框架页
    <FRAMESET ROWS="50%,50%" BORDER="1" FRAMESPACING="0" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0">
    <FRAME NAME="Top"    SRC="top.htm" SCROLLING="yes" BORDER="0" FRAMEBORDER="yes" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0">
    <FRAME NAME="bottom" SRC="bottom.htm" SCROLLING="yes" BORDER="0" FRAMEBORDER="yes" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0">
    </FRAMESET>--top.htm--
    空白就可以,不过要有这个文件
    --- bottom.htm --- 你要的代码
    <html>
    <body>
    <BUTTON onclick="showframeDiv()">显示层</BUTTON>
    <BUTTON onclick="hideframeDiv()">隐藏层</BUTTON> 
    <script language=javascript>var moELement = null;
    function showframeDiv(){
    var lb = 0;
    try{
    moELement.style.display = "block";
    }catch(e){
    moELement = parent.Top.document.createElement("DIV");
    moELement.id = "showImgDiv"
    parent.Top.document.body.insertBefore(moELement);
    moELement.style.display = "none";
    moELement.innerHTML = '<img src="youimg.jpg" width="100" height="100"> 这是从bottom创建的层';
    if (!lb){ showframeDiv(); }else{ alert("Top的页面还没准备好!")}
    lb = 1;
    }
    }
    function hideframeDiv(){
    try{
    moELement.style.display = "none";
    }catch(e){
    alert("top的层还没创建呢!");
    }
    }
    </script>
    </body>
    </html>
      

  5.   

    var moELement = null;
    function showframeDiv(){
    var lb = 0;
    try{   //尝试显示层
    moELement.style.display = "block";  //显示层
    }catch(e){  //如果显示层出错的话
    moELement = parent.Top.document.createElement("DIV"); //在Top页面创建DIV对象
    moELement.id = "showImgDiv" //这个可以不要
    parent.Top.document.body.insertBefore(moELement);//在Top页面插入刚才创建的对象
    moELement.style.display = "none"; //令它不显示
    moELement.innerHTML = '<img src="youimg.jpg" width="100" height="100"> 这是从bottom创建的层'; //设置层的内容
    if (!lb){ showframeDiv(); }else{ alert("Top的页面还没准备好!")} //这个防止死循环用,当top没完成下载,或确实不能创建层时给出提示。
    lb = 1;
    }
    }
    function hideframeDiv(){
    try{
    moELement.style.display = "none";  //隐藏
    }catch(e){
    alert("top的层还没创建呢!");  //错误提示
    }
    }
      

  6.   

    呵呵,题意要求:“在第一个框架页面中定义一个层,让这个层显示在另一个框架页面的指定位置上”,懒猫不愧是勤猫,还在其中“创建”了一个层。已经定义好的层可以这样做的:--- bottom.htm --- <html>
    <body><div id="showImgDiv" style="display:none">
    <img src="youimg.jpg" width="100" height="100"> 这是从bottom框架原有的层
    </div><BUTTON onclick="showframeDiv()">显示层</BUTTON>
    <BUTTON onclick="hideframeDiv()">隐藏层</BUTTON> 
    <script language=javascript>var moELement = null;function showframeDiv(){
    if (moELement == null) 
    {
    moELement = parent.Top.document.createElement("DIV");
    moELement.innerHTML = showImgDiv.innerHTML;
    }
    parent.Top.document.body.insertBefore(moELement);
    moELement.style.display = "block";
    }function hideframeDiv(){
    moELement.style.display = "none";
    }
    </script>
    </body>
    </html>
      

  7.   

    唉,人家都给你做到这份上了,剩一点点小问题你都自己不动一下脑筋。难道人家懒猫真是冲这你这100分来的?用style对象的 position=absolute , top=???, left=??? ,zIndex=???,想放哪就可以放哪了嘛。要隐藏,display="none"。
      

  8.   

    唉,人家都给你做到这份上了,剩一点点小问题你都自己不动一下脑筋。难道人家懒猫真是冲这你这100分来的?用style对象的 position=absolute , top=???, left=??? ,zIndex=???,想放哪就可以放哪了嘛。要隐藏,display="none"。也可以引用其他元素的相应属性值来定位:A.style.top = B.style.top ,要进行计算的时候先要转换成整数:A.style.top = parseInt(B.style.top) + 50
      

  9.   

    emu(ston) :
            对不起,你的解答我不会接受,你不但侮辱我,还侮辱了懒猫兄,你的帖子将被我删除!!!
      

  10.   

    啊!!!,下蛋的!!! :> O
      

  11.   

    惨了,我建议的style你既然不接受,那你那算怎么对付这个东西?
      

  12.   

    老兄,emu是一片好心。是为了你好
      

  13.   

    养成自己学习的习惯是最好的啦,不回答这个问题啦,你到google上输入:
    "定位 javascript"会有11800项查询结果,够详细的啦,呵呵...