2012-08-12 34 views
3

我正在使用html5和javascript語言的metro風格的應用程序。請找到我的問題如下:如何確定它是點擊還是點擊iteview的事件列表視圖

我有一個listview的iteminvoked事件,其中我試圖運行css3轉換。我不想在用戶點擊鼠標時運行動畫,因爲我已經爲鼠標懸停場景使用了css3聲明性動畫(:hover)。我的問題是如何確定它是點擊還是鼠標點擊。

 itemInvoked: function (args) { 
     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 { 

      var winitem = args.srcElement.querySelector(".win-item"); 
      var actionicon = winitem.querySelector(".item-image"); 
      var actiontitle = winitem.querySelector(".item-title"); 
      var showTransition = WinJS.UI.executeTransition(
       args.srcElement, 
       [{ 
        property: "border-color", 
        delay: 0, 
        duration: 500, 
        timing: "linear", 
        to: "#333" 
       }, 
       { 
        property: "z-index", 
        delay: 0, 
        duration: 500, 
        timing: "linear", 
        to: "999" 
       }, 
       { 
        property: "transform", 
        delay: 0, 
        duration: 500, 
        timing: "linear", 
        to: "scale(1.1)" 
       } 
       ] 
     ); 

回答

0

作爲一般規則,on不應區分鼠標和touch,除非它明顯不同。

還應該注意的是:元素上的懸停狀態仍然存在,但只能保留 - 當您將手指放在元素上時,您會看到懸停效果。

您應該看看自定義列表視圖不會調用的默認動畫;儘管也許這是不可能的。 (我正在談論似乎發生在物品上的默認比例)

Howerver,MSPointerEvent有一個pointerType屬性,可以讓您區分筆,鼠標和觸摸。

相關問題