问题描述
|
我有一个带有AjaxLink的页面,当单击链接时,将显示一个覆盖div,其中包含覆盖父页面的加载图像。我在这里找到了一个相关的例子。这是完美的工作。我将大小写从AjaxButton更改为AjaxLink。在我的情况下,页面默认情况下具有垂直滚动条。由于存在一个具有垂直扩展的大表,因此会生成此滚动条。现在,当该叠加层div可见时,滚动条仍然可见。我想隐藏该滚动条。所以我尝试了:
Mask.show = function(targetId)
{
var target=document.getElementById(targetId);
var mask=document.createElement(\"div\");
mask.innerHTML=\" \";
mask.className=\"wicket-mask\";
mask.style.cursor=\"not-allowed\";
mask.style.zIndex=\"5000\";
mask.id=\"wicket_mask_\"+targetId;
document.body.appendChild(mask);
Mask.offsetMask(mask);
var spinner=document.createElement(\"div\");
spinner.innerHTML=\" \";
spinner.className=\"wicket-spinner\";
spinner.style.cursor=\"not-allowed\";
spinner.style.zIndex=\"6000\";
spinner.id=\"wicket_spinner_\"+targetId;
document.body.appendChild(spinner);
Mask.centerSpinner(spinner);
// I have added this
document.body.style.overflow=\"hidden\";
}
/**
Hides the mask and spinner
*/
Mask.hide = function(targetId)
{
var mask=document.getElementById(\"wicket_mask_\"+targetId);
if (mask!=null) {
mask.style.display=\"none\";
document.body.removeChild(mask);
}
var spinner=document.getElementById(\"wicket_spinner_\"+targetId);
if (spinner!=null) {
spinner.style.display=\"none\";
document.body.removeChild(spinner);
}
// I have added this
document.body.style.overflow=\"auto\";
}
但是没有帮助。该滚动条保持可见。
我不知道是否可以从其他网站询问与代码相关的此类问题。所以我很抱歉
谢谢并恭祝安康。
解决方法
你使用的是什么浏览器?
我怀疑这可能是某些版本的Internet Explorer Quirks模式的情况,请尝试更改文档类型以输入“标准模式”。
您可以尝试:
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">
在ie中,如果您无法更改文档类型,也可以尝试将属性应用于document.documentElement