2014-01-14 90 views
0

我想升級到iScroll 5以獲得移動設備上的滾動性能改進,但MagnificPopup庫停止適用於iPhone/iPad。 這裏是展示問題的2個代碼示例:在iPad上MagnificPopup不能與iScroll配合使用5

  1. Example of zoom working用iPhone/iPad與iScroll 4.2.5
  2. Example of zoom NOT working與iScroll 5

桌面上的兩個例子都工作,但在iPhone/iPad上,使用iScroll 5的示例2在點擊圖片時將無法打開MagnificPopup模式。

任何有關可能導致此衝突的線索?

回答

2

基本上,由於iscroll會阻止touchevent的默認onBeforeScrollStart,如果iscroll意識到用戶沒有滾動,則會在目標元素上模擬和分派點擊事件。

好極了,但是一些元素(如文本字段,錨定標記,帶有超鏈接的圖片標記)會收到焦點;這是不幸的是沒有考慮到。

爲了克服這個問題,你可以將HTML標記添加到iscroll.js或iscroll-lite.js 在以下行。在js文件中搜索preventDefaultException,您可以添加您想要執行操作的標籤。

默認值是

preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ }, 

和我已經加入「A」「IMG」標籤給它

preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|A|IMG)$/ }, 

享受親愛的,它肯定會工作。

更多的事情你可以做,而不是上述,你也可以設置點擊和縮放爲true。 而你IScroll對象聲明

var myScroll = new IScroll('#wrapper', { click: true, zoom: true }); 

它會爲你工作,單擊和縮放事件。

+1

'var myScroll = new IScroll('#wrapper',{click:true,zoom:true});'適合我 – Mavichow