2012-07-23 35 views
0

如何在用户单击ListView项目的子元素时显示弹出窗口。我的意思是当用户点击下面ListView项目的“item-overlay”时,应该显示一个弹出窗口。我遇到的问题是地铁ListView没有提供一个事件方法让我在itemInvoked中获取该DOM。在Metro应用程序中单击项目时显示弹出窗口

HTML

<!-- Detail items --> 
<div class="itemtemplate" data-win-control="WinJS.Binding.Template"> 
    <img class="item-image" src="#" data-win-bind="src: backgroundImage; alt: title" /> 
    <div class="item-overlay"> 
     <h4 class="item-title" data-win-bind="textContent: shortTitle; id: key"></h4> 
    </div> 
</div> 

JS。这是ListView项的itemInvoked事件

itemInvoked: function (args) { 
    console.log("groupItems:itemInvoked"); 
    if (appView.value === appViewState.snapped) { 
     // If the page is snapped, the user invoked a group. 
     var group = Data.groups.getAt(args.detail.itemIndex); 
     nav.navigate("/pages/groupDetail/groupDetail.html", { groupKey: group.key }); 
    } else { 
     // If the page is not snapped, the user invoked an item. 
     var item = Data.items.getAt(args.detail.itemIndex); 

     nav.navigate("/pages/itemDetail/itemDetail.html", { item: Data.getItemReference(item) }); 
    } 
}, 

回答

0

那么很可能需要的双赢互动添加到容器中,以确保列表视图不下咽与元素的任何相互作用。

这说明,给你的处理程序,为什么你甚至要走这条路,不默认调用的东西给你什么,你呢?

相关问题