JS瀏覽器導(dǎo)航欄navigator的一些冷知識(shí)
監(jiān)聽(tīng)屏幕旋轉(zhuǎn)變化接口: orientationchange
orientation.angle : 0 豎屏 , 90 向左橫屏 , -90/270 向右橫屏 , 180 倒屏
screenOrientation: function(){ let self = this; let orientation = screen.orientation || screen.mozOrientation || screen.msOrientation; window.addEventListener("onorientationchange" in window ? "orientationchange" : "resize", function() { self.angle = orientation.angle; }); },
電池狀態(tài):navigator.getBattery()
charging:是否充電
chargingTime:還需充電時(shí)間
dischargingTime:剩余電量
level:剩余電量百分?jǐn)?shù)
onchargingchange:監(jiān)聽(tīng)充電狀態(tài)的改變 --可監(jiān)聽(tīng)事件
onchargingtimechange:監(jiān)聽(tīng)充電時(shí)間的改變 --可監(jiān)聽(tīng)事件
ondischargingtimechange: 監(jiān)聽(tīng)電池可用時(shí)間的改變 --可監(jiān)聽(tīng)事件
onlevelchange:監(jiān)聽(tīng)剩余電量百分?jǐn)?shù)的改變 --可監(jiān)聽(tīng)事件
getBatteryInfo: function(){ let self = this; if(navigator.getBattery){ navigator.getBattery().then(function(battery) { // 判斷是否在充電 self.batteryInfo = battery.charging ? `在充電 : 剩余 ${battery.level * 100}%` : `沒(méi)充電 : 剩余 ${battery.level * 100}%`; // 電池充電狀態(tài)改變事件 battery.addEventListener('chargingchange', function(){ self.batteryInfo = battery.charging ? `在充電 : 剩余 ${battery.level * 100}%` : `沒(méi)充電 : 剩余 ${battery.level * 100}%`; }); }); }else{ self.batteryInfo = '不支持電池狀態(tài)接口'; } },
讓你的手機(jī)震動(dòng): window.navigator.vibrate(200)
測(cè)試發(fā)現(xiàn)只有UC瀏覽器目前支持
vibrateFun: function(){ let self = this; if( navigator.vibrate ){ navigator.vibrate([500, 500, 500, 500, 500, 500, 500, 500, 500, 500]); }else{ self.vibrateInfo = "您的設(shè)備不支持震動(dòng)"; } <!-- // 清除震動(dòng) navigator.vibrate(0); // 持續(xù)震動(dòng) setInterval(function() { navigator.vibrate(200); }, 500); --> },
當(dāng)前語(yǔ)言:navigator.language
getThisLang:function(){ const langList = ['cn','hk','tw','en','fr']; const langListLen = langList.length; const thisLang = (navigator.language || navigator.browserLanguage).toLowerCase(); for( let i = 0; i < langListLen; i++ ){ let lang = langList[i]; if(thisLang.includes(lang)){ return lang }else { return 'en' } } }
//返回瀏覽器的內(nèi)部名稱(chēng) window.navigator.appCodeName //返回瀏覽器版本號(hào) window.navigator.appVersion //獲取設(shè)備的網(wǎng)絡(luò)連接信息 window.navigator.onLine //返回用戶(hù)的位置信息 let geolocation = window.navigator.geolocation { var watchID = navigator.geolocation.watchPosition(function(position) { do_something(position.coords.latitude, position.coords.longitude); }); } //瀏覽器 UI 的語(yǔ)言 window.navigator.language //表示網(wǎng)站訪客所使用的語(yǔ)言 window.navigator.languages //MediaDevices 該對(duì)象可提供對(duì)相機(jī)和麥克風(fēng)等媒體輸入設(shè)備的連接訪問(wèn),也包括屏幕共享 var mediaDevices = window.navigator.mediaDevices; mediaDevices.getUserMedia({ audio: true, video: true }).then(function (stream) { }).catch(function (err) { })
以上就是JS導(dǎo)航欄navigator的一些冷知識(shí)的詳細(xì)內(nèi)容,更多關(guān)于JS導(dǎo)航欄navigator的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
利用HTML5的畫(huà)布Canvas實(shí)現(xiàn)刮刮卡效果
大家都玩過(guò)刮刮樂(lè)吧,都想一夜暴富,本文給大家分享一款利用HTML5的畫(huà)布Canvas實(shí)現(xiàn)刮刮卡效果,需要的朋友可以參考下2015-09-09BootStrap注意事項(xiàng)小結(jié)(五)表單
這篇文章主要介紹了BootStrap注意事項(xiàng)小結(jié)(五)表單的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,,需要的朋友可以參考下2017-03-03在JavaScript中遭遇級(jí)聯(lián)表達(dá)式陷阱
在JavaScript中遭遇級(jí)聯(lián)表達(dá)式陷阱...2007-03-03javascript html5實(shí)現(xiàn)表單驗(yàn)證
這篇文章主要為大家詳細(xì)介紹了javascript html5實(shí)現(xiàn)表單驗(yàn)證的具體代碼,感興趣的小伙伴們可以參考一下2016-03-03