本文分享下自己平時(shí)積累的一些實(shí)用性較高的js方法,供大家指點(diǎn)和評(píng)價(jià)。本想分篇介紹,發(fā)現(xiàn)有點(diǎn)畫(huà)蛇添足。整理了下也沒(méi)多少拿得出手的方法,自然有一些是網(wǎng)上看到的個(gè)人覺(jué)得很有實(shí)用性的方法,在這里一起貼出來(lái)供大家探討。
1、點(diǎn)擊返回若沒(méi)有之前頁(yè)面則跳轉(zhuǎn)到規(guī)定頁(yè)面
首先是客戶需求中要求――單個(gè)分享到微信的頁(yè)面,點(diǎn)擊返回可以跳轉(zhuǎn)到網(wǎng)站首頁(yè)。
期間這個(gè)功能有和客戶探討過(guò),能否在頁(yè)面中添加回到首頁(yè)按鈕進(jìn)行跳轉(zhuǎn)。
可是這種方式無(wú)法作用到每個(gè)頁(yè)面,并且指明需要該功能的分享頁(yè)面沒(méi)有可以放得下一個(gè)圖標(biāo),又不影響美觀的地方了。于是,本人只好是尋求度娘。度娘上也盡是一些打著擦邊球的功能。
所以通過(guò)自己的嘗試 有了以下代碼:
//返回之前沒(méi)頁(yè)面則返回首頁(yè)function pushHistory() { //獲取瀏覽器歷史記錄棧中的記錄個(gè)數(shù) //由于頁(yè)面加載的時(shí)候就會(huì)將當(dāng)前頁(yè)面壓入棧中 所以判斷是否小于2 if (history.length < 2) { var state = { title: "index", url: getHttpPrefix + "index.html" }; window.history.pushState(state, "index", getHttpPrefix + "index.html"); state = { title: "index", url: "" }; window.history.pushState(state, "index", ""); }} 再將下面這段代碼加入頁(yè)面ready事件中:
setTimeout(function () { pushHistory() window.addEventListener("popstate", function (e) { 5 if (window.history.state !=null&&window.history.state.url != "") { location.href = window.history.state.url } }); }, 300);具體功能就是判斷之前是否有頁(yè)面,若沒(méi)有就將制定網(wǎng)站的鏈接地址插入state(這里用的是首頁(yè)),然后再監(jiān)聽(tīng)popstate事件,進(jìn)行相應(yīng)功能的操作。
這段代碼可能還有一些小問(wèn)題,所以打算是貼出來(lái)有人可以一起探討和完善。
2、便捷log方法
相信大家頁(yè)面調(diào)試的時(shí)候早已經(jīng)厭煩了console.log()略顯 主站蜘蛛池模板: 绥阳县| 马鞍山市| 怀柔区| 海林市| 嫩江县| 隆化县| 始兴县| 固安县| 陕西省| 竹溪县| 崇明县| 日照市| 绥阳县| 湘西| 泰来县| 莱芜市| 溆浦县| 建阳市| 修水县| 曲阳县| 河津市| 鸡泽县| 贞丰县| 丰县| 夏邑县| 唐海县| 师宗县| 石楼县| 密山市| 绥棱县| 阳信县| 鄂州市| 安丘市| 彭泽县| 西华县| 田阳县| 军事| 赫章县| 双江| 牡丹江市| 吴桥县|