[javascript] 解決 iscroll 超連結開啟問題

來源:互聯網
上載者:User

  在mobile上使用iscroll的話,預設啟用touch事件綁定,由於touch事件非常靈敏。如果手指觸摸到串連的話,滑動換沒完成瀏覽器就會預設開啟串連操作。這樣就不能完成正常滾動。

  iscroll的設計思想是在一個頁面完成操作,沒有新開標籤開啟頁面的方式,那麼既要用iscroll又要實現新頁面開啟的功能怎麼辦能?

 time.qq.com的處理方式是,整個頁面都沒有使用a標籤,完全用指令碼操作介面的轉換。

 http://h5.m.sohu.com/   的處理方式是使用了a 和href,href值是hash形式的也不會造成新頁面開啟

 

 http://ipad.hao123.com/#index  的處理方式比較特別,使用了dataSet API 和window.open

<a ontouchmove="this.s=1" ontouchend="this.s || window.open(this.dataset.href),this.s=0" target="_blank" data-href="http://www.hao123.com/topic/pig">黃浦江死豬之謎</a>

在觸發touchmove時加一個flag,touchend時檢查滾動狀態確定是否開啟串連。這樣可以避免滾動中造成的誤操作,並且能夠實現開啟新頁面。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.