当我打开jquery对话框时,滚动条出现在我的页面上。我不知道为什么,因为我的jquery对话框非常小。当我移动对话框时(通过拖动标题栏),立即滚动条消失。
有什么想法吗?
感谢。
修改
我调试了一点,我能够重现这个问题。在我的页面上,我有一些标签(加载了ajax)。第一个需要页面上的滚动条。当我点击第二个“标签”时,没有滚动条出现在这个页面上,当我打开一个对话框时,jQuery滚动条会回来!如果我拖动jQuery对话框(带标题栏),滚动条消失,如果我再次打开jQuery对话框,则不会回来。它一直有效,直到我回到需要滚动条的第一个“标签”上。
我不知道我是否清楚。
编辑2
好的,我测试了很多,我更清楚地指出了问题所在。这是:当用户点击标题菜单(ajax链接)时,会显示一个临时的jquery对话框,要求用户等待......直到加载页面。此jquery对话框是模态>>在整个窗口高度/宽度上显示灰色背景。
正如您在上面的捕捉中所看到的,高度相当可观。从页面A(长页面)导航到页面B(短页面)。此时,关闭对话框模态。在新显示的页面(更小)上,我单击一个按钮以显示另一个jquery模式对话框。似乎jquery仍然认为我的页面高度为1198px,但事实并非如此!因此我看到滚动条出现了。
现在最大的问题是:我该怎么做才能避免这种行为?
答案 0 :(得分:0)
我终于找到了解决方案:
$('.ui-widget-overlay').css('height', '100%');
$("#dialog-modal").dialog('close');
在关闭我的jquery模式对话框之前(说等待......)我调整灰色背景的高度(通常在使用jquery模态时)。这样,下一个jquery模式就不会出现滚动条了。
请记住以下情况:
页面A和页面B之间的高度差异是问题!!
答案 1 :(得分:-2)
我现在没有太多时间回答,但我想的一件事就是在CSS的html标签中永久添加垂直滚动条,只是为了看看它是否最初摆脱了问题。