2013-02-04 72 views
1

我已經在我的網站一些jQuery的鼠標懸停效果,我需要然而,禁用觸摸屏,我怎麼知道是什麼寬屏幕禁用JQuery的jQuery效果?目前我已經在800像素以下。這適用於ipad肖像,但是當我將其打開時,jQuery再次被激活。我已經讀過Ipad橫向寬度爲1024px,但這也可能是一個小型非觸摸屏的尺寸。有什麼方法可以指定某些設備的效果而不是屏幕寬度?響應式設計 - 禁用觸摸屏

回答

2

要做到這一點,你應該看看工作的其他方式,而不是在事件禁用鼠標觸摸設備的增加對非觸摸設備的事件。

添加Modernizr到項目中你的工作的(你可能已經知道了在那裏)。一旦加入您就可以把它作爲一個類的HTML元素包括「觸摸」測試

<html class="touch"> 

如果設備具有觸摸功能那麼一切都將保持原樣,但如果設備不具有觸摸然後moderizr將隱蔽,從touchno-touch

<html class="no-touch"> 

然後,您可以綁定你的鼠標事件關閉具有類.no-touch

的HTML元素我已經把這樣的一個例子中的代碼爲p恩 - http://rwd.is/VyRl37

這是假設你還在加載jQuery庫的所有設備,並決定是否基於對觸摸設備的功能加載鼠標。如果您正在尋找有條件加載jQuery的本身,那麼你應該看看enquire.js在規定寬度的jQuery加載。

如果你想保留的jQuery其他功能上更小的設備,但想提高性能,你可以看看使用Zepto.js作爲一個輕量級替代使用。

最後Response.js也可以讓你在特定的斷點處調用函數,但是你仍然遇到不知道它是否啓用觸摸的問題。