Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 实现模式对话框有点问题_Javascript_Jquery - Fatal编程技术网

Javascript 实现模式对话框有点问题

Javascript 实现模式对话框有点问题,javascript,jquery,Javascript,Jquery,我正在开发一个模式对话框,作为web应用程序的一部分。有一件事一直困扰着我。请看我刚刚上传的电影剪辑。我强烈地感到,我必须用视频来回答我的问题,因为在这种情况下,最好看一次,而不是听100次 可以是垂直滚动,也可以同时垂直和水平滚动。但我在我的示例中使用的是水平滚动,所以请注意 以下是我的问题: 透明遮罩的宽度会影响页面本身的宽度。但在Opera中,例如,每次调整窗口大小时,页面的宽度最多接近“true”。在IE中,一旦透明遮罩影响了宽度,页面就会记住它并保持不变。问题是什么?如何解决?如何让I

我正在开发一个模式对话框,作为web应用程序的一部分。有一件事一直困扰着我。请看我刚刚上传的电影剪辑。我强烈地感到,我必须用视频来回答我的问题,因为在这种情况下,最好看一次,而不是听100次

可以是垂直滚动,也可以同时垂直和水平滚动。但我在我的示例中使用的是水平滚动,所以请注意

以下是我的问题:

透明遮罩的宽度会影响页面本身的宽度。但在Opera中,例如,每次调整窗口大小时,页面的宽度最多接近“true”。在IE中,一旦透明遮罩影响了宽度,页面就会记住它并保持不变。问题是什么?如何解决?如何让IE表现得像Opera那样

在我的项目中,我执行以下操作:

//curViewpointW and curViewpointH are current width and height of the viewpoint (current is meant to be the moment of the resize event) 
oMask.style.width = curViewpointW + 'px';
oMask.style.height = curViewpointH + 'px';      

var pageWH = getPageWH(); //getPageWH() is a function that gets current width and height of the page (with scrolling if there is any)
var curPageW = pageWH[0];
var curPageH = pageWH[1];

if (curPageW > curViewpointW) {
    oMask.style.width = curPageW + 'px';    
} 
if (curPageH > curViewpointH) {
    oMask.style.height = curPageH + 'px';   
}
但是IE忽略了这一点


另外,在我的示例中,它是jQuery,所以很多人以前可能使用过它的对话框。

您是否研究过设置onresize事件处理程序,以便在调整窗口大小时调整遮罩尺寸?如果您使用的是Prototype,您可以像下面这样悄悄地设置这样的处理程序:

Event.observe(document.onresize ? document : window, "resize", function() {//dostuff});

提供,若你们能用文字描述你们的问题,并在必要时用图片描述,那个将非常有帮助。要求人们观看演示问题的视频可能要求有点过分。正如我所说,这种情况下,最好看一次,而不是听100遍,即阅读100遍。图片在这里也不会有多大用处。我已经有了一个函数,它完全可以在框架的帮助下实现您建议的功能。但这与我的问题无关。观看视频片段以抓住要点。