Краткое руководство: добавление всплывающего элемента (HTML)
[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. В случае разработки приложений для Windows 10 см. раздел последняя документация]
В этом кратком руководстве описан порядок создания и стилизации всплывающего элемента. (Только для Windows)
Необходимые условия
Создание первого приложения Магазина Windows на JavaScript
Рекомендации и контрольный список для всплывающих элементов
1. Создание всплывающего элемента
В этом примере в момент нажатия пользователем кнопки Buy (Купить) над этой кнопкой появляется всплывающий элемент. Этот всплывающий элемент является элементом управления в библиотеке Windows для JavaScript, WinJS.UI.Flyout, а также должен быть непосредственным дочерним типом элемента <body>
.
<body>
<!-- Button that launches the confirmation Flyout. -->
<button class="action" id="buyButton">Buy</button>
<!-- Confirmation Flyout. -->
<div id="confirmFlyout" data-win-control="WinJS.UI.Flyout" aria-label="{Confirm purchase flyout}">
<div>Your account will be charged $252.</div>
<button id="confirmButton">Complete Order</button>
</div>
<body>
// Initialize WinJS controls.
WinJS.UI.processAll();
// Initialize event listeners.
document.getElementById("buyButton").addEventListener("click", showConfirmFlyout, false);
document.getElementById("confirmButton").addEventListener("click", confirmOrder, false);
// Command and Flyout functions.
function showConfirmFlyout() {
showFlyout(confirmFlyout, buyButton, "top");
}
function showFlyout(flyout, anchor, placement) {
flyout.winControl.show(anchor, placement);
}
function confirmOrder() {
document.getElementById("confirmFlyout").winControl.hide();
}
2. Стиль всплывающего элемента
Вы можете использовать стандартные темы оформления пользовательского интерфейса (светлую или темную), представленные здесь, или создать собственную тему, как описано далее.
У всплывающих элементов есть набор свойств CSS, которые можно настраивать.
Свойство | Пример |
---|---|
Font-family (Семейство шрифтов) Управляет шрифтом текста |
font-family:'Segoe UI'; |
Font-size (Размер шрифта) Управляет шрифтом текста |
font-size:9pt; |
Цвет Управляет цветом текста |
color:rgb(0, 0, 0); |
Background-color (Цвет фона) Управляет цветом гарнитуры (шрифта) |
background-color:rgb(255, 255, 255); |
Рамка Управляет толщиной, цветом и стилем линий рамки |
border:2px solid rgb(128, 128, 128); |
Max-width (Максимальная ширина) Управляет максимальной шириной окна |
max-width:400px; |
Этот пример взят из примера HTML flyout control, и в нем в основном использован стандартный стиль.
/* Flyout title. */
.win-flyout:not(.win-menu) .win-type-x-large
{
font-weight: 300;
margin-top: -13px;
padding-bottom: 18px;
}
/* Flyout buttons. */
.win-flyout:not(.win-menu) button,
.win-flyout:not(.win-menu) input[type="button"]
{
margin-top: 16px;
margin-left: 20px;
float: right;
}
Визуальные элементы в данном примере выражены более четко, однако сам образец все еще требует доработки.
/* Flyout with attent-getting colors. */
.win-flyout
{
background-color: yellow;
border-color: red;
color: green;
}
Сводка
В этом кратком руководстве мы создали всплывающий элемент, реагирующий на действие пользователя.
Связанные разделы
Пример использования элемента управления "Всплывающий элемент", написанный на HTML