当用户在 Metro 应用中点击/单击时,浮出控件不应隐藏



在我的地铁风格应用程序(Windows 8)中,我创建了一个页面覆盖和一个显示消息的浮出控件。当用户单击页面时,浮出控件消息将变为隐藏状态。但我希望即使用户单击覆盖页面也能保留浮出控件。我正在使用HTML5和WinJS。无论如何,我可以使用其他控件实现上述方案,或者我可以防止页面在用户点击/单击屏幕时停止对事件做出反应。

这并不真正受支持——浮出控件本身没有持久/粘性/模态的概念。如果您查看 base.js 中的代码,您会发现它不会公开任何代码来利用应用栏中使用的内置粘性行为(事实证明,这有点像浮出控件。

您可以执行以下几项操作:

  • 将"_sticky: true"传递给浮出控件的构造函数。例如<div data-win-control="WinJS.UI.Flyout" data-win-options="{ _sticky: true}">
  • 将单击处理程序附加到文档顶部,如果它位于浮出控件创建的单击吃div 上,请取消事件
  • 只需向正文添加新的div 并对其进行绝对定位,即可创建自己的 UI。

最新更新