通過對(duì)滑動(dòng)事件(touchmove)設(shè)置e.preventDefault()和e.stopPropagation()函數(shù)實(shí)現(xiàn)功能。以及禁止解除,即把touchmove改成touchstart即可。

創(chuàng)新互聯(lián)公司主營(yíng)武安網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件定制開發(fā),武安h5重慶小程序開發(fā)搭建,武安網(wǎng)站營(yíng)銷推廣歡迎武安等地區(qū)企業(yè)咨詢
具體實(shí)現(xiàn)思路及代碼如下:
1、打開一個(gè)HTML頁(yè)面,頁(yè)面只有一個(gè)h標(biāo)簽,并在瀏覽器打開開發(fā)者調(diào)試界面。安卓和IOS調(diào)試均正常。
2、添加關(guān)鍵函數(shù),滑動(dòng)時(shí)輸出字符。(此時(shí),將e.preventDefault()和e.stopPropagation()兩個(gè)函數(shù)注釋)
3、此時(shí),開發(fā)者工具console輸出:
4、此時(shí),將第三步的注釋去掉,將正常的console注釋,如下:
5、此時(shí)的頁(yè)面輸出如下:(滑動(dòng)時(shí)返回錯(cuò)誤)
擴(kuò)展資料:
js移動(dòng)端事件:
1、touchstart:當(dāng)手指觸摸屏幕時(shí)觸發(fā);即使已經(jīng)有一個(gè)手指放在了屏幕上也會(huì)觸發(fā)
2、touchmove:當(dāng)手指在屏幕上滑動(dòng)時(shí)連續(xù)地觸發(fā)。在這個(gè)世界發(fā)生期間,調(diào)用preventDefault()可以阻止?jié)L動(dòng)。
3、touchend:當(dāng)手指在屏幕上移開時(shí)觸發(fā)。
4、touchcancel:當(dāng)系統(tǒng)停止跟蹤觸摸時(shí)觸發(fā)。
上面這幾個(gè)事件都會(huì)冒泡,也都可以取消。
雖然這些觸摸事件沒有在DOM規(guī)范中定義,但它們卻是以兼容DOM的方式實(shí)現(xiàn)的。因此,每個(gè)觸摸事件的event對(duì)象都提供了鼠標(biāo)事件中常見的屬性:
bubbles,cancelable,view,clientX,clientY,screenX,screenY,detail,altKey,shiftKey,ctrlKey和metaKey。
除了常見的DOM屬性外,觸摸世界還包含下列三個(gè)用于跟蹤觸摸的屬性。
1、touches:表示當(dāng)前跟蹤的觸摸操作的Touch對(duì)象的數(shù)組。
2、targetTouches:特定于事件目標(biāo)的Touch對(duì)象的數(shù)組。
3、changedTouches:表示字上次觸摸以來發(fā)生了什么改變的Touch對(duì)象的數(shù)組。
//聲明一個(gè)為0的變量做記錄值
doucument.body.addEvenetListener('touchstart',function(e){
//記錄下按下時(shí)的e.touches[0].clientY或者e.touches[0].pageY;
});
document.body.addEventListener('touchmove',function(e){
//獲取當(dāng)前e.touches[0].clientY或者e.touches[0].pageY 并且與之前記錄的值比較 當(dāng)前值大于之前值的話就可以判斷當(dāng)前動(dòng)作是在向上滑動(dòng) 然后做翻頁(yè)的操作即可
});
如果用現(xiàn)成的js框架做的話 有一個(gè)叫quo.js的框架非常不錯(cuò)
一、原理及實(shí)現(xiàn)方法如下:
1、當(dāng)開始一個(gè)touchstart事件的時(shí)候,獲取此刻手指的橫坐標(biāo)startX和縱坐標(biāo)startY;
2、當(dāng)觸發(fā)touchmove事件時(shí),在獲取此時(shí)手指的橫坐標(biāo)moveEndX和縱坐標(biāo)moveEndY;最后,通過這兩次獲取的坐標(biāo)差值來判斷手指在手機(jī)屏幕上的滑動(dòng)方向。
二、注意:
手指在滑動(dòng)整個(gè)屏幕時(shí),會(huì)影響瀏覽器的行為,比如滾動(dòng)和縮放。所以在調(diào)用touch事件時(shí),要注意禁止縮放和滾動(dòng)。
1.禁止縮放?
通過meta元標(biāo)簽來設(shè)置。
2.禁止?jié)L動(dòng)?
preventDefault是阻止默認(rèn)行為,touch事件的默認(rèn)行為就是滾動(dòng)。?
event.preventDefault()。
1、jquery 監(jiān)聽頁(yè)面滾動(dòng)使用的方法:.scroll()。
2、新建一個(gè)HTML文檔,定義body的高度。
3、創(chuàng)建JS腳本,使用.scroll() 方法監(jiān)聽頁(yè)面滾動(dòng)。
4、如果頁(yè)面發(fā)生滾動(dòng),則執(zhí)行函數(shù),彈出一個(gè)hello。
5、保存文件,查看.scroll()監(jiān)聽頁(yè)面滾動(dòng)的效果。
jquery手機(jī)觸屏左右滑動(dòng)切換欄目
$(function(){
TouchSlide({
slideCell:"#slideBox",
titCell:".myhd ul", //開啟自動(dòng)分頁(yè) autoPage:true ,此時(shí)設(shè)置 titCell 為導(dǎo)航元素包裹層
mainCell:".bd ul",
effect:"leftLoop",
autoPage:true,//自動(dòng)分頁(yè)
autoPlay:true //自動(dòng)播放
});
div id="slideBox" class="slideBox"
div class="bd"
ul
li
a class="pic" href="#"img src="${ctxStatic}/img/mobile/news1.png" //a
a class="tit" href="#"墨西哥教師罷工 與警察激烈沖突/a
/li
li
a class="pic" href="#"img src="${ctxStatic}/img/mobile/news2.jpg"http://a
a class="tit" href="#"日右翼游行紀(jì)念釣島"國(guó)有化"周年/a
/li
li
a class="pic" href="#"img src="${ctxStatic}/img/mobile/news3.jpg"http://a
a class="tit" href="#"女兵競(jìng)選美國(guó)小姐鼓勵(lì)女性自強(qiáng)/a
/li
li
a class="pic" href="#"img src="${ctxStatic}/img/mobile/news4.jpg"http://a
a class="tit" href="#"濟(jì)南現(xiàn)“最窄人行道” 僅0.2米寬/a
/li
/ul
/div
div class="myhd"
ul style="height: 28px;"/ul
/div
/div
文章名稱:jquery滑屏,滑屏是什么
新聞來源:http://chinadenli.net/article5/dsepoii.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷、Google、品牌網(wǎng)站建設(shè)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)