2011-12-06 52 views
0

我正在建立一個專門針對觸摸設備的頁面。 當您觸摸菜單時,DIV會顯示頁面上有菜單項。 但是,我喜歡在用戶點擊DIV之外的區域時隱藏DIV。觸摸任何地方隱藏模式/工具提示/燈箱上移動safari

我知道在桌面上,你可以在菜單上有懸停效果,並顯示一個DIV,這模擬了我想要在任何地方觸摸移動的效果,菜單隱藏。

但我怎樣才能使用觸摸手勢專門存檔,而不是懸停?

繼承人的示例代碼至今: http://jsfiddle.net/calebo/E5vvm/

回答

0

一個這樣做的方式是結合體「單擊」事件,只要它被點擊,隱藏的「明星」的div和解除綁定體「點擊「事件,這是骯髒的,但它正在工作...

$(document).ready(function() { 
    $('.widget-stars').bind('click', function() { 
    event.preventDefault(); 
    $('#star').fadeIn(function() { 
     $("#star").parents("body").bind("click", function() { 
     $("#star").fadeOut(); 
     $(this).unbind("click"); 
     }); 
    }); 
    }); 
}); 
+0

我怎樣才能使用addClass函數添加一個類'foo'到#star而不是fadeIn? – calebo

+0

$(「#start」).addClass(「foo」);並刪除類「foo」使用$(「#start」).removeClass(「foo」);您可以添加類而不是淡入淡出,並刪除類而不是淡出 – ComputerSaysNo