Javascript 我可以使用条件来呈现网格小部件吗?

Javascript 我可以使用条件来呈现网格小部件吗?,javascript,sitefinity,Javascript,Sitefinity,我在greenfield SiteFinity12.2网站工作。我使用自定义网格小部件呈现站点的页眉和页脚,这些小部件带有为站点导航等小部件定义的占位符。页眉中有一个弹出式菜单,其中有占位符,我想在页面模板上填充小部件。不幸的是,我需要在设计器模式下禁用站点的自定义JavaScript以防止编辑工具出现问题,因此我无法通过正常方式访问弹出菜单,因为它是通过自定义JavaScript切换的 理想情况下,我希望在页面设计器模式下有条件地呈现弹出式菜单的替代视图,以允许作者修改这些占位符的内容。在Ra

我在greenfield SiteFinity12.2网站工作。我使用自定义网格小部件呈现站点的页眉和页脚,这些小部件带有为站点导航等小部件定义的占位符。页眉中有一个弹出式菜单,其中有占位符,我想在页面模板上填充小部件。不幸的是,我需要在设计器模式下禁用站点的自定义JavaScript以防止编辑工具出现问题,因此我无法通过正常方式访问弹出菜单,因为它是通过自定义JavaScript切换的

理想情况下,我希望在页面设计器模式下有条件地呈现弹出式菜单的替代视图,以允许作者修改这些占位符的内容。在Razor文件中,这可以通过以下方式实现

@if(SystemManager.IsDesignMode)


但是网格小部件使用.html文件,因此Razor语法不可用。是否有任何类型的属性可以应用于网格小部件模板中的标记,以告知Sitefinity仅在设计器模式下呈现标记?如果没有,我是否应该遵循其他最佳实践来避免这种情况?

我遵循Veselin的建议,仅在设计模式下在布局文件中添加自定义样式。我能够让弹出式菜单始终像这样可见,这符合我的需要。我还收到了Sitefinity的一些人的建议,通过查找“sfPageEditorWrp”类,可以检测Javascript中的页面编辑器,如果CSS本身不能解决这个问题,这个类可能会很有用

这是一个简单的显示:对于我的弹出式菜单,它在编辑器中看起来有点难看,但它暴露了占位符,这正是我所关心的。 在我的布局文件中:

@if (SystemManager.IsDesignMode)
    {
        <style>
            .mobile-menu {
                display: block !important;
            }
        </style>
    }
@if(SystemManager.IsDesignMode)
{
.手机菜单{
显示:块!重要;
}
}

如果您处于设计模式,则可以在布局视图中包含其他css文件,例如backendFixes.css。在这个css中,您可以使菜单始终可见、粘滞等。