1. 程式人生 > >判斷滑動到底禁止 ios微信方向

判斷滑動到底禁止 ios微信方向

PreventScroll('body', '#pay', '#floor');//判斷元素

if (!HTMLElement.currentStyle) {
function _getStyle(prop) {
var _s = window.getComputedStyle(this, null)
    return prop ? _s[prop] : _s;
}
   HTMLElement.prototype.currentStyle = _getStyle;
        HTMLElement.prototype.getStyle = _getStyle;
}
// 阻止微信下拉出黑底外掛
function PreventScroll() {
// // 非微信瀏覽器直接跳出 -- 後來發現好些瀏覽器都有這個坑,所以去掉
// var ua = navigator.userAgent.toLowerCase();
// if (!ua.match(/MicroMessenger/i)) return;

var elem = arguments || []; // 傳入繫結的元素
var $elem = []; // 儲存所有需要監聽的元素

// 獲取需要監聽的元素
for (var i=0,len=elem.length; i<</span>len; i++) {
  var $e = document.querySelectorAll(elem[i]);
   if (!$e) {console.error('您輸入的元素不對,請檢查'); return;}
      for(var j=0; j<</span>$e.length; j++) {
         if ($e[j].currentStyle('overflow').match(/auto|scroll/i)) {
    $elem.push($e[j]);
  }
 }
}

window.addEventListener('touchstart', function(e){
  window.scroll_start = e.touches[0].clientY;
    });
window.addEventListener('touchmove', prevent);

function prevent(e) {
    var status = '11'; // 1容許 0禁止,十位表示向上滑動,個位表示向下滑動
        var startY = window.scroll_start;
  var currentY = e.touches[0].clientY;
   var direction = currentY - startY > 0 ? '10' : '01'; // 當前的滾動方向,10 表示向上滑動

$elem.forEach(function(ele){
     var scrollTop = ele.scrollTop,
 offsetHeight = ele.offsetHeight,
       scrollHeight = ele.scrollHeight;

if (scrollTop === 0) {
// 到頂,禁止向下滑動,或高度不夠,禁止滑動
  status = offsetHeight >= scrollHeight ? '00' : '01';
    } else if (scrollTop + offsetHeight >= scrollHeight) {
// 到底,則禁止向上滑動
   status = '10';
  }
});

// output.innerHTML = status + ' ' + ++count;
// 如果有滑動障礙,如到頂到底等
    if (status != '11') {
      if (!(parseInt(status, 2) & parseInt(direction, 2))) {
   e.preventDefault();
            return;
         }
              }
      }
}

相關推薦

判斷滑動到底禁止 ios方向

PreventScroll('body', '#pay', '#floor');//判斷元素 if (!HTMLElement.currentStyle) { function _getStyle(prop) { var _s = window.getComputedSty

vue中根據手機類型判斷是安卓、IOS跳轉相應下載頁面

nload tor js代碼 roi agen 按鈕 path his cati 按鈕:<div class="download" @click="downApp">立即下載</div> 遮罩層:<div class="dark" v-show

iOS支付demo運行報錯解決如下

art llb readme ring -objc override 項目 技術 cep 要接入微信支付的小夥伴,首先要下載一份官方demo(APP微信支付官方Demo下載),然後打開工程,準備大幹一場。 1、編譯報錯 編譯的時候居然直接報錯了(orz) 錯誤提示:

ios瀏覽器click事件不起作用的解決方法

ont func 手機 alert 微信 搜索 pan font js代碼 $(document).on( "click", ".weui_cell", functi

ios端網站遇到的問題

無法 for 什麽 pointer toc col ont input isa 最近的一個項目,在測試ios時遇上了一些問題: 1.給div、span等元素綁定的點擊事件無效 2.表單輸入時整個頁面白屏 3.readonly的元素出現光標(iphon5/ ios8.0) 第

解決IOS內置瀏覽器返回後不執行js腳本的問題

style load 返回 on() cti 發現 bsp 內置瀏覽器 false 在A頁面寫一個$(function(){}) 後隨便點擊一個URL跳轉到B頁面 利用微信內置瀏覽器 返回鍵返回到A頁面後發現這段JS不執行,後來找到了解決方案 $(f

php判斷頁面來自手機或者 $_SERVER['HTTP_USER_AGENT']

ipa int fun pos ray http ret spa span function is_phone(){ $agent = strtolower($_SERVER[‘HTTP_USER_AGENT‘]); //pc請求頭信息數組

判斷當前頁面是否在瀏覽器中打開

當前頁 tro als != log () navi sha sharp 方法:(微信官方js判斷做法) var ua = navigator.userAgent.toLowerCase();   var isWeixin = ua.indexOf(‘micromesse

iOS內存監控

刪除結點 man 次數 郵件 代碼 AC 應用商店 結構體 接口監控 WeTest 導讀 目前iOS主流的內存監控工具是Instruments的Allocations,但只能用於開發階段。本文介紹如何實現離線化的內存監控工具,用於App上線後發現內存問題。 FOO

判斷當前頁面是否在內置瀏覽器中打開

pan var 不同的 nav rom navigator false 都是 16px 轉: 任何瀏覽器的判斷都是獲取user-agent參數進行判斷的,判斷當前頁面是否在微信瀏覽器中打開同樣也不例外。1、首先需要獲取微信內置瀏覽器的User Agent,經過對微信的瀏覽器

vue+webpack專案在iOS端偶爾出現白屏,重新整理又能重新進入的解決方案,在Android上不會出現

           問題描述:微信公眾號內部的專案,我使用的是vue+webpack的方式,路徑配置正確的情況下,在Chrome上執行正常,執行npm run build放在測試伺服器上,配置好相應入口,通過微信訪問,在Android機

js--判斷當前環境是否為環境

/** * 判斷是否是微信環境 */ ClientNetWeb.prototype.getIsWxClient = function () { var ua = navigator.userAgent.toLowerCase(); i

Android仿ios左劃條目刪除、置頂的實現,程式碼簡潔,更容易理解使用

<span style="font-family:Arial, Helvetica, sans-serif;"><span style="background-color: rgb(255, 255, 255);">歡迎大家</span></span

iOS 分享到朋友圈

最近要加微信朋友圈分享的功能,上官網下檔案,照著文件搭環境,但是總有錯誤,於是百度部落格來看,發現和官方文件一樣,解決不了自己的問題,現在問題解決了,分享出來希望對大家有幫助。 1.首先要向微信註冊你的應用程式IDhttps://open.weixin.qq.com/cgi-bin/frame?

關於ios端滾動的bug

情況描述:ios微信端,一個富文字渲染的頁面,用的v-html,進入頁面只顯示了螢幕100%的內容,無法滾動檢視更多--偶現 解決方法:由於專案是接手來做的,vue-cli全家桶,原本設定了 html,body{ height:100%; } #app{ height:100%;

ios 逆向部分

一、砸殼方法(轉載註明出處) 準備工作: 越獄的手機(必須的) class-dump (匯出砸殼後的二進位制包的標頭檔案) Cycript(Cydia)(在越獄手機的越獄市場下載,安裝) adv-cmds(Cydia)(在越獄手機的越獄市場下載,安裝)

IOS瀏覽器無法自動播放背景音樂的解決辦法

IOS系統為了節省使用者的流量,禁止了audio標籤的自動播放,所以在蘋果手機上H5的audio標籤不能自動播放,目前我只找到了微信瀏覽器上的解決辦法。 <body> <audio id="bgmusic" src="audio/9282.wav"

判斷當前頁面是否在瀏覽器中開啟

在實際的專案中,有時候需要判斷當前頁面是否在微信瀏覽器中開啟 ,以下提示了三種方法,每一種都可以, 方法一, var ua = navigator.userAgent.toLowerCase(); var isWeixin = ua.indexOf('micromessenger')

判斷使用者是否取消關注公眾號

public  boolean judgeIsFollow(String access_token,String openid){ Integer subscribe = 0; String url = "https://api.weixin.qq.com/cgi-bin/user/info

App 支付出現 IOS 支付驗證簽名失敗 Android errCode =-1

遇到這個問題讓我很憂傷,排查了一下午 記得檢查 app_Key , 就是讓你自己寫的32位大小寫外加數字的那個,這個開始我自己亂寫的,後來查資料說可能會引起不能支付,這就很尷尬了。生成MD532 位,後來試了試,其實沒事,但是最好這樣吧,避免不必要的錯誤 公司可能申請了