2013-04-16 75 views
2

当我点击一个按钮时,Flyout将出现在我点击的按钮顶部进行确认。Winjs飞出屏幕中心

我尝试这样做:

flyout.alignment="center" 

,但比对通过该按钮。我想在我的屏幕中央显示我的飞出物。我在问这是否可行Winjs.UI.Flyout

回答

2

Flyout始终与作为第一个参数传递的元素对齐。如果您需要将弹出窗口与元素对齐但位于屏幕中央,则可以通过在屏幕中央放置隐藏元素并将弹出窗口与其对齐来完成。

_oncmdclick: function oncmdclick(event) 
{ 
    // assume an element with class hidden in the page and placed at center of the screen 
    var hiddenElement = this.element.querySelector('.hidden'); 
    var myFlyoutElement = ...; // myFlyoutElement is the flyout element 
    this.newItemFlyoutElement.winControl.show(hiddenElement, 'top', 'center'); 
},  

HTML:

<div class="hidden" style="visibility: collapse"></div> 

CSS:

// in this case, I had used 1x1 -ms-grid for the section of the page 
.mypage.fragment section[role=main] { 
    display: -ms-grid; 
    -ms-grid-rows: 1fr; 
    -ms-grid-columns: 1fr; 
} 
// center the hidden element in the page grid 
.mypage.fragment section[role=main] .hidden 
{ 
    -ms-grid-column-align: center; 
    -ms-grid-row-align: center; 
} 
+0

伟大的想法THX苏希尔 – Brahim