ãããã¯ã¼ã¯æ å ± API
å©ç¨å¯è½æ§ã¯éå®ç
ãã®æ©è½ã¯ãã¼ã¹ã©ã¤ã³ã§ã¯ããã¾ãããæãåºã使ç¨ããã¦ãããã©ã¦ã¶ã¼ã®ä¸é¨ã§åä½ãã¾ããã
ã¡ã¢: ãã®æ©è½ã¯ã¦ã§ãã¯ã¼ã«ã¼å ã§å©ç¨å¯è½ã§ãã
ãããã¯ã¼ã¯æ å ± API ã¯ã·ã¹ãã ã®ãããã¯ã¼ã¯æ¥ç¶ã«é¢ããæ å ±ããä¸è¬çãªæ¥ç¶ã®ç¨®é¡ ('wifi' ã 'cellular' ãªã©) ã®è¦³ç¹ããæä¾ãã¾ãã ããã¯ãã¦ã¼ã¶ã¼ã®æ¥ç¶ã«åºã¥ããé«è§£å度ã³ã³ãã³ããä½è§£å度ã³ã³ãã³ãã鏿ããããã«ä½¿ç¨ãããã¨ãã§ãã¾ãã
API ã¯åä¸ã® NetworkInformation ãªãã¸ã§ã¯ãã§æ§æããã¾ãããã㯠Navigator.connection ã¾ã㯠WorkerNavigator.connection ããããã£ããè¿ãããã¤ã³ã¹ã¿ã³ã¹ã§ãã
ã¤ã³ã¿ã¼ãã§ã¤ã¹
NetworkInformation-
端æ«ããããã¯ã¼ã¯éä¿¡ã«ä½¿ç¨ãã¦ããæ¥ç¶æ¹æ³ã®æ å ±ãæä¾ãã¾ããã¾ããæ¥ç¶ã®ç¨®é¡ã夿´ãããå ´åã«ãã¹ã¯ãªããã¸éç¥ããææ®µãæä¾ãã¾ãã
NetworkInformationã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ã¤ã³ã¹ã¿ã³ã¹åã§ãã¾ããã代ããã«ãNavigatorã¾ãã¯WorkerNavigatorã¤ã³ã¿ã¼ãã§ã¤ã¹ãéãã¦ã¢ã¯ã»ã¹ãã¾ãã
ä»ã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®æ¡å¼µ
-
端æ«ã®ãããã¯ã¼ã¯æ¥ç¶ã«é¢ããæ å ±ãæ ¼ç´ãã
NetworkInformationãªãã¸ã§ã¯ããè¿ãã¾ãã -
端æ«ã®ãããã¯ã¼ã¯æ¥ç¶ã«é¢ããæ å ±ãæ ¼ç´ãã
NetworkInformationãªãã¸ã§ã¯ããæä¾ãã¾ãã
ä¾
>æ¥ç¶ã®å¤åã®æ¤åº
以ä¸ã®ä¾ã§ã¯ãã¦ã¼ã¶ã¼ã®æ¥ç¶ã®å¤åãç£è¦ãã¾ãã
let type = navigator.connection.effectiveType;
function updateConnectionStatus() {
console.log(
`æ¥ç¶ã®ç¨®é¡ã ${type} ãã ${navigator.connection.effectiveType} ã«å¤å`,
);
type = navigator.connection.effectiveType;
}
navigator.connection.addEventListener("change", updateConnectionStatus);
大ããªãªã½ã¼ã¹ãäºåèªã¿è¾¼ã¿
æ¥ç¶ãªãã¸ã§ã¯ãã¯ã大ããªå¸¯åå¹
ãã¡ã¢ãªã¼ã使ããããªã½ã¼ã¹ãäºåèªã¿è¾¼ã¿ãããã©ããæ±ºããå ´åã«ä¾¿å©ã§ãã以ä¸ã®ä¾ã¯ããã¼ã¸ã®èªã¿è¾¼ã¿ç´å¾ã«å¼ã³åºãããåç»ã®äºåèªã¿è¾¼ã¿ãæã¾ãããªãå ´åã®æ¥ç¶ã®ç¨®é¡ã確ããã¾ããæºå¸¯é»è©±åç·æ¥ç¶ãè¦ã¤ããã¨ã preloadVideo ãã©ã°ã¯ false ã«è¨å®ããã¾ããã³ã¼ããããããããããããã«ããã®ä¾ã§ã¯ã²ã¨ã¤ã®æ¥ç¶ã®ç¨®é¡ã ãããã¹ããã¾ãããå®éã«ä½¿ãå ´åã«ã¯ã switch æãã®ä»ã®ããæ¹ã§ã NetworkInformation.type ã®å¯è½ãªå¤ãã¹ã¦ã確ããããã¨ã«ãªãã§ãããã type ã®å¤ã«ãããããã NetworkInformation.effectiveType ããããã£ãç¨ãã¦æ¥ç¶é度ãè¦ç©ãããã¨ãã§ãã¾ãã
let preloadVideo = true;
const connection = navigator.connection;
if (connection) {
if (connection.effectiveType === "slow-2g") {
preloadVideo = false;
}
}
仿§æ¸
| 仿§æ¸ |
|---|
| Network Information API > |