mobile
touch事件
touchstart // 手指觸控到DOM元素觸發
touchmove // 手指在DOM元素滑動時觸發
touchend // 手指從DOM元素移開時觸發
TouchEvent觸控事件物件
touches // 正在觸控(螢幕)的所有手指的一個列表
targetTouches // 正在觸控當前(DOM元素)上的手指的一個列表
changedTouches // 手指狀態發生了改變的列表,從無到有,從有到無變化
// touchend事件只能拿到changedTouches 不能拿到targetTouches touches
移動端拖動元素
// 需要當前手指的座標值 targetTouches[0]裡面的pageX和pageY
// 手指移動也會觸發螢幕滾動
// touchmove內部要阻止預設的螢幕滾動e.preventDefault()
// transition過渡結束事件
element.addEventListener('transitionend',function (){ ... })
// 輪播
// 使用transform: translateX() 配合transition過渡
// 不需要使用animate動畫函式
// 無縫滾動時 取消過渡
// 手指滑動
// 原始translateX + 手指滑動距離 取消過渡
// 通過touchend事件設定回彈
classList
// 新增類名
element.classList.add(類名)
// 移除類名
element.classList.remove(類名)
// 切換類名 有刪除 沒有新增
element.classList.toggle(類名)
click300ms延時
// 原因移動端雙擊螢幕會縮放
// 禁止使用者縮放
<meta name="viewport" content="user-scalable=no">
// 封裝touch事件
// 手指觸控離開時間間隙小於150ms且沒有滑動過螢幕 則定義為點選
tap(element, function () { // 執行程式碼 })
function tap(element, callback) {
var isMove = false
var startTime = 0
element.addEventListener('touchstart', function () {
startTime = Date.now()
})
element.addEventListener('touchmove', function () {
isMove = true
})
element.addEventListener('touchend', function () {
if (!isMove && (Date.now - startTime) < 150) {
callback && callback()
}
isMove = false
startTime = 0
})
}
// fastclick外掛
<script src="fastclick.js"></script>
<script>
if ('addEventListener' in document) {
document.addEventListener('DOMContentLoaded', function () {
FastClick.attach(document.body);
}, false);
}
</script>
// zyMedia多媒體外掛
<div class="zy_media">
<video poster="test.jpg" data-config='{"mediaTitle": "《瘋狂動物城》--騰訊視訊"}'>
<source src="test.mp4" type="video/mp4">
您的瀏覽器不支援HTML5視訊
</video>
</div>
zymedia('video');
相關文章
- 啟用 Ultra Mobile PaygoGo
- Testing the Modern Mobile World - AngLi
- win10 mobile怎麼改dns_win10 mobile如何更改dns地址Win10DNS
- Flexion Mobile 釋出 King of AvalonFlex
- What is a mobile phone film cutting machine?Mac
- NG-ZORRO-MOBILE (Ant Design Mobile of Angular) 移動端UI元件庫正式釋出AngularUI元件
- Kotlin Multiplatform Mobile已邁入AlphaKotlinPlatform
- 在windows mobile上必硬(bing)Windows
- 《PUBG Mobile》收入已超35億美元
- 手機管理軟體(syncios mobile manager)iOS
- Everything you need to know about mobile app architectureAPP
- Dva+Antd-mobile專案實踐
- EMAS 移動 DevOps 解決方案 —— Mobile DevOpsdev
- 微軟開始Windows 10 Mobile 15063.1506更新微軟Windows
- 【Windows Mobile開發系列 之 開始二】使用VS2008進行Windows Mobile開發環境的搭建Windows開發環境
- win10mobile關閉web搜尋怎麼操作_win10mobile關閉web搜尋如何設定Win10Web
- 叮咚,TNAS Mobile 3.3已上線,請注意查收!
- 計網學習筆記五 wireless && mobile networks筆記
- Couchbase推出Couchbase Mobile 3更新發力邊緣
- Windows Mobile開發資源站點集錦Windows
- 微軟開始推送Win10 Mobile 15254.575微軟Win10
- antd-mobile 自定義picker按鈕樣式
- DevExpress v17.2新版亮點—Mobile Controls篇devExpress
- win10 mobile不會同步時間怎麼解決_win10 mobile不會同步時間怎麼辦Win10
- Roblox Mobile玩家消費總額突破15億美元
- 什麼是前端開發中的 mobile first 策略前端
- 《PUBG Mobile》和《和平精英》總收入突破30億美元
- 微軟推送最新Windows 10 Mobile 15254.572正式版微軟Windows
- salesforce零基礎學習(一百)Mobile Device TrackingSalesforcedev
- 微軟開始推送win10 Mobile 15063.1563更新微軟Win10
- 微軟推送Windows 10 Mobile正式版15254.527更新微軟Windows
- 前端小記4——高效能mobile web開發前端Web
- [譯] 如何在安卓應用中使用 TensorFlow Mobile安卓
- Mand Mobile - 基於金融場景的Vuejs元件庫VueJS元件
- sec575 MOBILE DEVICE SECURITY AND ETHICAL HACKING -2020版本dev
- 《PUBG Mobile》及《和平精英》全球總收入突破15億美元
- ONEMT 與 Flexion Mobile 達成一項新合作協議Flex協議
- 微軟開始推送Windows 10 Mobile 15063.1868正式版微軟Windows