gpt4 book ai didi

jquery - Sharepoint 2010 标准模型对话框打印透明与背景内容合并

转载 作者:行者123 更新时间:2023-11-28 13:07:35 26 4
gpt4 key购买 nike

默认情况下,在 Sharepoint 2010 中,您编辑的每个列表项都会在新模型对话框中打开。

此对话框显示为类为 ms-dlgContent 的新 div。它还创建了一个类为 ms-dlgOverlay 的 div,作为使背景变暗的灰色框。但是,它不会修改现有的包含背景内容的 div(在 id 为 s4-workspace 的 div 中找到。)

当您打印带有对话框的页面时,对话框的背景和 ms-dlgOverlay div 将被忽略,因为背景不会打印。这意味着对话框的字段与对话框后面的页面内容重叠,看起来一团糟。

我有一个用于打印的 css 页面设置,我想用它来在出现对话框时隐藏背景内容。我可以将 div 的样式设置为 display:none 在此 css 工作表中,但是当且仅当存在对话框时,我找不到将类添加到 s4-workspace 元素的方法。 (如果没有对话框,我希望打印 s4-workspace 元素。)

我尝试将以下内容添加到我的母版页,但它不起作用。我猜这是因为对话框窗口在页面加载时不存在,我不确定如何在对话框打开/关闭时运行我的 javascript

<script type="text/javascript">
jQuery(function() {
jQuery("#s4-workspace").removeClass("backgroundOfDialog");
//this should run if the ms-dlgContent class is found and do nothing otherwise
jQuery(".ms-dlgContent").parent().children("#s4-workspace").addClass("backgroundOfDialog");
});
</script>

最佳答案

我想我找到了解决方案……但它远非理想。我每 5 秒检查一次页面以查看对话框的 div 是否存在:

<script type="text/javascript">
jQuery(function() {
setInterval(checkForDialog, 5000);
});

function checkForDialog()
{
var dialogDiv = jQuery(".ms-dlgContent");
if(dialogDiv.length)
{
jQuery("#s4-workspace").addClass("backgroundOfDialog");
}
else
{
jQuery("#s4-workspace").removeClass("backgroundOfDialog");
}

}
</script>

关于jquery - Sharepoint 2010 标准模型对话框打印透明与背景内容合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15771476/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com