1

私のメトロ スタイル アプリ (Windows 8) では、ページ オーバーレイとメッセージを表示するフライアウトを作成しました。ユーザーがページをクリックすると、フライアウト メッセージが非表示になります。しかし、ユーザーがオーバーレイ ページをクリックしてもフライアウトが残るようにします。HTML5 と WinJS を使用しています。とにかく、他のコントロールを使用して上記のシナリオを達成できるか、ユーザーが画面をタップ/クリックしたときにページがイベントに反応しなくなるのを防ぐことができますか?

4

1 に答える 1

5

これは実際にはサポートされていません。フライアウト自体には、永続的/スティッキー/モーダルであるという概念がありません。base.js のコードを見ると、appbar で使用される組み込みのスティッキー動作を利用するためのコードが公開されていないことがわかります (これは一種のフライアウトです。

あなたができることがいくつかあります:

  • _sticky: true" " をフライアウトのコンストラクターに渡します。例えば<div data-win-control="WinJS.UI.Flyout" data-win-options="{ _sticky: true}">
  • ドキュメントの上部にクリック ハンドラーをアタッチし、フライアウトが作成するクリックを食べる div にある場合は、イベントをキャンセルします。
  • 本体に新しい div を追加し、それを絶対配置するだけで、独自の UI を作成できます。
于 2012-09-20T16:09:33.520 に答える