關(guān)于前端公眾號開發(fā)的零碎知識點(diǎn)集合

1.關(guān)于蘋果手機(jī)和安卓手機(jī)的判斷方法

?var u= navigator.userAgent;

var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //iOS終端

var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //安卓終端

2.關(guān)于蘋果手機(jī)全面屏判斷方法

var rate= window.screen.height/ window.screen.width; ?

?var limit=? window.screen.height== window.screen.availHeight? 1.8 : 1.65;// 臨界判斷值

?var result = rate> limit ? '是全面屏':‘不是全面屏’;

3.關(guān)于是否是用微信打開前端頁面判斷

function isWeiXin() {

? ? var ua = window.navigator.userAgent.toLowerCase();

? // 不加window部分Android機(jī)會(huì)顯示不了提示圖华畏,即判斷不了是否是微信

? ? if (ua.match(/MicroMessenger/i) == 'micromessenger') {

? ? ? ? return true;

? ? } else {

? ? ? ? return false;

? ? }

}

4.flex布局在iphone 6上不兼容的問題

display:flex → display:-webkit-flex

justify-content:space-between;→-webkit-justify-content:space-between

align-items:center;→-webkit-align-items:center

flex-direction:column;→ webkit-flex-direction:column;

flex-wrap:wrap;→ webkit-flex-wrap:wrap;

5.蘋果手機(jī)公眾號輸入框焦點(diǎn)問題

@onblur="loseFocus"

function ?loseFocus() {

? ? ? ? ? ? ? ? ? ? var ua= navigator.userAgent.toLowerCase();

? ? ? ? ? ? ? ? ? ? var u= navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);

? ? ? ? ? ? ? ? ? ? if(ua.match(/MicroMessenger/i)== 'micromessenger' && !!u) {

? ? ? ? ? ? ? ? ? ? ? ? var currentPosition, timer;

? ? ? ? ? ? ? ? ? ? ? ? var speed= 0;//頁面滾動(dòng)距離

? ? ? ? ? ? ? ? ? ? ? ? timer = setInterval(function() {

? ? ? ? ? ? ? ? ? ? ? ? ? ? currentPosition= document.documentElement.scrollTop|| document.body.scrollTop;

? ? ? ? ? ? ? ? ? ? ? ? ? ? currentPosition-= speed;

? ? ? ? ? ? ? ? ? ? ? ? ? ? window.scrollTo(0, currentPosition);//頁面向上滾動(dòng)

? ? ? ? ? ? ? ? ? ? ? ? ? ? currentPosition += speed; //speed變量

? ? ? ? ? ? ? ? ? ? ? ? ? ? window.scrollTo(0, currentPosition);//頁面向下滾動(dòng)

? ? ? ? ? ? ? ? ? ? ? ? ? ? clearInterval(timer);

? ? ? ? ? ? ? ? ? ? ? ? },1);

? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? }


6.利用js動(dòng)態(tài)添加css弓候,可參照2贸典,因?yàn)樵谔O果公眾號训柴,全面屏和非全面屏衙传,同樣的css顯示字體實(shí)際大小不一樣腕铸,所以按照需要加載不同的css

?var head= document.head|| document.getElementsByTagName('head')[0];

var style = document.createElement('style');

style.type= 'text/css';

head.appendChild(style);

?style.innerHTML= ".cell-bottom {font-size: 0.14rem;}.cell-bottom .time {font-size: 0.16rem;}";

7.safari瀏覽器(蘋果手機(jī))處理字符串轉(zhuǎn)時(shí)間兼容問題

2020-04-01 00:00:00 safari只識別‘/’

item.endDate.replace(/\-/g, "/")




8.文字在蘋果手機(jī)公眾號上下不居中問題实辑,及l(fā)ine-height 問題

在公眾號開發(fā)中慎用不从,慎用浊洞,慎用?line-height讓文字上下居中牵敷,因?yàn)樵谔O果公眾號上,文字會(huì)自動(dòng)偏下法希,蘋果公眾號會(huì)自動(dòng)為元素添加padding

解決方法枷餐,不設(shè)置有背景色的標(biāo)簽的高度,用padding來達(dá)到設(shè)置高度的目的(非常重要)


9.margin padding 問題

父標(biāo)簽中第一個(gè)子標(biāo)簽設(shè)置margin-top 不起作用苫亦,這個(gè)margin-top的值會(huì)自動(dòng)轉(zhuǎn)化為父標(biāo)簽的margin-top,此時(shí)用父標(biāo)簽的padding代替



10.按鈕中放圖片問題

11.設(shè)置padding和margin均為0的情況下毛肋,標(biāo)簽之間仍有空格問題

代碼換行,編輯器空格問題

12.微信公眾號開發(fā)js文檔

https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#3

關(guān)閉瀏覽器方法

? ? ? ? ? document.addEventListener('WeixinJSBridgeReady',function(){ WeixinJSBridge.call('closeWindow'); },false);

? ? ? ? ? WeixinJSBridge.call('closeWindow');

13.公眾號和瀏覽器返回上個(gè)界面問題

?history.pushState(null,null,document.URL);

?window.addEventListener('popstate',function () {history.pushState(null,null,document.URL); });

window.addEventListener("popstate",function(e) {location.href="test.html"},false); 接收事件

14.關(guān)于通用的上中下布局 著觉,上面高度固定村生,下面內(nèi)容自動(dòng)填充,中間隨上下位置改動(dòng)饼丘,內(nèi)容多的情況滑動(dòng)

* {margin: 0;padding: 0;}html {height: 100%;}body {height: 100%;}

.bodyPage {height: 100%;display: flex;flex-direction: column;}

.head {height: 100px;background: green;}

.content {flex: 1;margin: 20px 0;background:lightblue;overflow: scroll}

.foot {background: blue;margin-bottom: 20px;}

<div class="bodyPage">

? <div class="head"></div>

? <div class="content"></div>

? <div class="foot">阻止默認(rèn)的處理方式阻止默認(rèn)的處理方式</div>

</div>


15.隱藏公眾號右上角分享按鈕

function onBridgeReady() {

? ? ? ? ? ? WeixinJSBridge.call('hideOptionMenu');

? ? ? ? }


? ? ? ? if (typeof WeixinJSBridge== "undefined") {

? ? ? ? ? ? if (document.addEventListener) {

? ? ? ? ? ? ? ? document.addEventListener('WeixinJSBridgeReady', onBridgeReady,false);

? ? ? ? ? ? }else if (document.attachEvent) {

? ? ? ? ? ? ? ? document.attachEvent('WeixinJSBridgeReady', onBridgeReady);

? ? ? ? ? ? ? ? document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);

? ? ? ? ? ? }

? ? ? ? }else {

? ? ? ? ? ? onBridgeReady();

? ? ? ? }


16.自定義分享和調(diào)用微信的功能

1.文檔鏈接https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#3

2.首先需要配置趁桃,配置文件檢測鏈接?http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=jsapisign

3.配置簽名生成步驟 accesstoken--->jsapi_ticket----->通過微信提供的后臺代碼

4.獲取accesstoken鏈接:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + wappid + "&secret=" + secret

5.獲取jsapi_ticket鏈接:https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi


17.用戶信息獲取

第一步:用戶同意授權(quán),獲取code

第二步:通過code換取網(wǎng)頁授權(quán)access_token

第三步:刷新access_token(如果需要)

第四步:拉取用戶信息(需scope為?snsapi_userinfo)

18。全面解決Html頁面緩存的問題?鏈接:https://www.cnblogs.com/gluncle/p/9680520.html

html?

<meta http-equiv="Expires" content="0">

<meta http-equiv="Pragma" content="no-cache">

<meta http-equiv="Cache-control" content="no-cache">

<meta http-equiv="Cache" content="no-cache">


js和css

<script type="text/javascript">document.write('<script src="js/sign.js?v='+new Date().getTime()+'" type="text/javascript" charset="utf-8"><\/script>');</script>

<script type="text/javascript">document.write('<link rel="stylesheet" type="text/css" href="css/index.css?v='+new Date().getTime()+'" />');</script>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末卫病,一起剝皮案震驚了整個(gè)濱河市油啤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蟀苛,老刑警劉巖益咬,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異帜平,居然都是意外死亡幽告,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進(jìn)店門裆甩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冗锁,“玉大人,你說我怎么就攤上這事嗤栓《澈樱” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵茉帅,是天一觀的道長叨叙。 經(jīng)常有香客問我,道長堪澎,這世上最難降的妖魔是什么擂错? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮全封,結(jié)果婚禮上马昙,老公的妹妹穿的比我還像新娘。我一直安慰自己刹悴,他們只是感情好行楞,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著土匀,像睡著了一般子房。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上就轧,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天证杭,我揣著相機(jī)與錄音,去河邊找鬼妒御。 笑死解愤,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的乎莉。 我是一名探鬼主播送讲,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼奸笤,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了哼鬓?” 一聲冷哼從身側(cè)響起监右,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎异希,沒想到半個(gè)月后健盒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡称簿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年扣癣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片予跌。...
    茶點(diǎn)故事閱讀 39,965評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搏色,死狀恐怖善茎,靈堂內(nèi)的尸體忽然破棺而出券册,到底是詐尸還是另有隱情,我是刑警寧澤垂涯,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布烁焙,位于F島的核電站,受9級特大地震影響耕赘,放射性物質(zhì)發(fā)生泄漏骄蝇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一操骡、第九天 我趴在偏房一處隱蔽的房頂上張望九火。 院中可真熱鬧,春花似錦册招、人聲如沸岔激。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽虑鼎。三九已至,卻和暖如春键痛,著一層夾襖步出監(jiān)牢的瞬間炫彩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工絮短, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留江兢,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓丁频,卻偏偏與公主長得像杉允,于是被迫代替她去往敵國和親扔嵌。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評論 2 355