HTML的div可以去外面的浏览器窗口? [英] HTML divs can go outside browser window?

查看:157
本文介绍了HTML的div可以去外面的浏览器窗口?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我与它有一个下拉分区ASP.NET Web部件玩耍。这是所有的方式到页面的右侧。当我点击要拿出来,它熄灭了窗口。通常任何关闭可视区域将触发底部滚动。这怎么可能?

编辑:这是Internet Explorer 8中下面是一些背景的标记。有关的一个,我认为是ID = WebPart_wp774658725VerbsMenu。默认情况下它不会显示。当您在TD / SPAN动词/ SPAN点击VerbsPopup(它可以是任何),它显示下拉菜单。在开发工具我没有看到附加到这些元素任何JavaScript,但如果我调试它我看到它运行一些。

 < TD类= partTitle>
  <表样式=WIDTH:100%BORDER = 0 CELLSPACING = 0的cellpadding = 0>
    <&TBODY GT;
      &所述; TR>
        < TD风格=WIDTH:100%; WHITE-SPACE:NOWRAP; CURSOR:移动ID = WebPartTitle_wp774658725>< SPAN标题=账单信息>计费信息与LT; / SPAN>&安培; NBSP;< / TD&GT ;
        < TD风格=WHITE-SPACE:NOWRAP>
          <跨度风格=PADDING-BOTTOM:1px的; PADDING-LEFT:1px的; PADDING-RIGHT:1px的; DISPLAY:inline-block的;颜色:白色; CURSOR:手; TEXT-DECORATION:无; PADDING-TOP:1px的 ID = WebPart_wp774658725Verbs>
            <跨度风格=FONT-FAMILY:Marlett; FONT-SIZE:8PTID = WebPart_wp774658725VerbsPopup> U< / SPAN>
          < / SPAN>
          < D​​IV的风格=显示:无ID = WebPart_wp774658725VerbsMenu>
            <表样式=BORDER-BOTTOM:白色1px的固体; BORDER-LEFT:白色1px的固体; BACKGROUND-COLOR:栗色; WIDTH:100%; BORDER崩溃:崩溃; FONT-FAMILY:宋体; FONT-SIZE:0.8 EM; BORDER-TOP:1px的白色固体; BORDER-RIGHT:1px的白色固体CELLSPACING = 0的cellpadding = 1>
              <&TBODY GT;
                &所述; TR>
                  < TD风格=WHITE-SPACE:NOWRAP>
                    < D​​IV>
                      < A级=菜单项标题=删除帐单信息'的onclick =如果(document.body的.__ wpmDeleteWarning.length == 0 || confirm(document.body.__wpmDeleteWarning)){document.body.__wpm.SubmitPage('WebFormDisplay1$MainPageWPZ', 删除:wp774658725');}HREF =JavaScript的:无效(0)>
                        < IMG风格=BORDER-BOTTOM风格:无; BORDER-RIGHT风格:无; BORDER-TOP风格:无;垂直对齐:中间; BORDER-LEFT风格:无ALT =删除的结算信息'SRC =/ WebResource.axd的D = 5L7XWTaglMPmXRe6NJDkRg2&放大器;放大器; T = 633802513995006876WIDTH = 16 HEIGHT = 16>&安培; NBSP;&删除放大器; NBSP;
                      < / A>
                    < / DIV>
                  < / TD>
                < / TR>
              < / TBODY>
            < /表>
          < / DIV>
        < / TD>
      < / TR>
    < / TBODY>
  < /表>
< / TD>
WebParts.js
    功能WebPartMenu_OnClick(){
    VAR一个= window.event.srcElement .__菜单;
    如果(typeof运算A =未定义&放大器;!&安培;!一个= NULL){
        cancelEvent(window.event);
        一场表演()
    }
}功能WebPartMenu_Show(){
    如果(typeof运算__wpm.menu =未定义&放大器;!&安培;!__wpm.menu = NULL)__wpm.menu.Hide();
    变种E =< HTML和GT;< HEAD><风格>中+a.menuItem,a.menuItem:链接{显示:块;填充:1px的;文字修饰:无;+ this.itemStyle +}+a.menuItem:哈弗{+ this.itemHoverStyle + }+'< /风格与GT;<车身滚动=不的风格=边界:无;保证金:0;填充:0; ondragstart =window.event.returnValue = FALSE;的onclick =popup.hide()>' + this.menuElement.innerHTML +<身体GT;< / HTML>中,
    B = 16,
    C = 16;
    this.popup = window.createPopup();
    __wpm.menu =这一点;
    变种D = this.popup.document;
    d.write(E);
    this.popup.show(0,0,B,C);
    VAR一个= d.body;
    B = a.scrollWidth;
    C = a.scrollHeight;
    如果(B< this.menuLabelElement.offsetWidth)B = this.menuLabelElement.offsetWidth + 16;
    如果(this.menuElement.innerHTML.indexOf(!进程id:DXImageTransform.Microsoft.Shadow)= -1)a.style.paddingRight =递四方;
    一个.__ WPM = __wpm;
    一个.__ wpmDeleteWarning = __wpmDeleteWarning;
    一个.__ wpmCloseProviderWarning = __wpmCloseProviderWarning;
    a.popup = this.popup;
    this.popup.hide();
    this.popup.show(0,this.menuLabelElement.offsetHeight,B,C,this.menuLabelElement)
}


解决方案

这确实是createPopup方法做的伎俩。它在Internet Explorer中的专有方法。

请参阅 http://msdn.microsoft.com /en-us/library/ms536392%28VS.85%29.aspx

I was playing around with ASP.NET Web Parts which has a "drop down" div. It's all the way to the right of the page. When I click to bring it up, it goes off the window. Usually anything off the viewable area will trigger the bottom scrollbars. How is this possible?

Edit: It's Internet Explorer 8. Below is the markup with some context. The relevant one I think is id=WebPart_wp774658725VerbsMenu. By default it doesn't display. When you click on the td/span Verbs/span VerbsPopup (it could be any), it shows the "dropdown". In Developer Tools I don't see any JavaScript attached to those elements, but if I debug it I see it running some.

<TD class=partTitle>
  <TABLE style="WIDTH: 100%" border=0 cellSpacing=0 cellPadding=0>
    <TBODY>
      <TR>
        <TD style="WIDTH: 100%; WHITE-SPACE: nowrap; CURSOR: move" id=WebPartTitle_wp774658725><SPAN title="Billing Information">Billing Information</SPAN>&nbsp;</TD>
        <TD style="WHITE-SPACE: nowrap">
          <SPAN style="PADDING-BOTTOM: 1px; PADDING-LEFT: 1px; PADDING-RIGHT: 1px; DISPLAY: inline-block; COLOR: white; CURSOR: hand; TEXT-DECORATION: none; PADDING-TOP: 1px" id=WebPart_wp774658725Verbs>
            <SPAN style="FONT-FAMILY: Marlett; FONT-SIZE: 8pt" id=WebPart_wp774658725VerbsPopup>u</SPAN>
          </SPAN>
          <DIV style="DISPLAY: none" id=WebPart_wp774658725VerbsMenu>
            <TABLE style="BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; BACKGROUND-COLOR: maroon; WIDTH: 100%; BORDER-COLLAPSE: collapse; FONT-FAMILY: Arial; FONT-SIZE: 0.8em; BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px solid" cellSpacing=0 cellPadding=1>
              <TBODY>
                <TR>
                  <TD style="WHITE-SPACE: nowrap">
                    <DIV>
                      <A class=menuItem title="Deletes 'Billing Information'" onclick="if(document.body.__wpmDeleteWarning.length == 0 || confirm(document.body.__wpmDeleteWarning)){document.body.__wpm.SubmitPage('WebFormDisplay1$MainPageWPZ', 'delete:wp774658725');}" href="javascript:void(0)">
                        <IMG style="BORDER-BOTTOM-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-TOP-STYLE: none; VERTICAL-ALIGN: middle; BORDER-LEFT-STYLE: none" alt="Deletes 'Billing Information'" src="/WebResource.axd?d=5L7XWTaglMPmXRe6NJDkRg2&amp;t=633802513995006876" width=16 height=16>&nbsp;Delete&nbsp;
                      </A>
                    </DIV>
                  </TD>
                </TR>
              </TBODY>
            </TABLE>
          </DIV>
        </TD>
      </TR>
    </TBODY>
  </TABLE>
</TD>


WebParts.js
    function WebPartMenu_OnClick() {
    var a = window.event.srcElement.__menu;
    if (typeof a != "undefined" && a != null) {
        cancelEvent(window.event);
        a.Show()
    }
}

function WebPartMenu_Show() {
    if (typeof __wpm.menu != "undefined" && __wpm.menu != null) __wpm.menu.Hide();
    var e = "<html><head><style>" + "a.menuItem, a.menuItem:Link { display: block; padding: 1px; text-decoration: none; " + this.itemStyle + " }" + "a.menuItem:Hover { " + this.itemHoverStyle + " }" + '</style><body scroll="no" style="border: none; margin: 0; padding: 0;" ondragstart="window.event.returnValue=false;" onclick="popup.hide()">' + this.menuElement.innerHTML + "<body></html>",
    b = 16,
    c = 16;
    this.popup = window.createPopup();
    __wpm.menu = this;
    var d = this.popup.document;
    d.write(e);
    this.popup.show(0, 0, b, c);
    var a = d.body;
    b = a.scrollWidth;
    c = a.scrollHeight;
    if (b < this.menuLabelElement.offsetWidth) b = this.menuLabelElement.offsetWidth + 16;
    if (this.menuElement.innerHTML.indexOf("progid:DXImageTransform.Microsoft.Shadow") != -1) a.style.paddingRight = "4px";
    a.__wpm = __wpm;
    a.__wpmDeleteWarning = __wpmDeleteWarning;
    a.__wpmCloseProviderWarning = __wpmCloseProviderWarning;
    a.popup = this.popup;
    this.popup.hide();
    this.popup.show(0, this.menuLabelElement.offsetHeight, b, c, this.menuLabelElement)
}

解决方案

It is indeed the createPopup method that does the trick. It's a proprietary method in Internet Explorer.

See http://msdn.microsoft.com/en-us/library/ms536392%28VS.85%29.aspx.

这篇关于HTML的div可以去外面的浏览器窗口?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆