成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡化你的工作,七種常用的 JS 代碼片段

開發 前端
日常開發中,我們經常會用到很多通用的 JS 代碼,比如:復制內容、從 URL 中獲取指定參數等。這些代碼通常有固定實現,即:代碼片段。所以,為了方便大家的開發,今天咱們就來看看常用的 7 種代碼片段。

Hello,大家好,我是 Sunday。

日常開發中,我們經常會用到很多通用的 JS 代碼,比如:復制內容、從 URL 中獲取指定參數等。

這些代碼通常有固定實現,即:代碼片段。

所以,為了方便大家的開發,今天咱們就來看看常用的 7 種代碼片段。

1.將內容復制到剪貼板

通過按鈕,將指定 dom 中的內容復制到用戶的剪貼板

const copyToClipboard = (content) => {
  const textarea = document.createElement("textarea")
  
  textarea.value = content
  document.body.appendChild(textarea)
  textarea.select()
  document.execCommand("Copy")
  textarea.remove()
}

2.使用URLSearchParams獲取URL的搜索參數

這應該是一個非常常見的操作,之前經常會使用 正則來完成,現在有了更簡單的方式:

const getQueryByName = (name) => {
  const query = new URLSearchParams(location.search)
  return decodeURIComponent(query.get(name))
}
// url: https://sunday.com/?name=fatfish&age=100
const name = getQueryByName('name') // fatfish
const age = getQueryByName('age') // 100
const gender = getQueryByName('gender') // null

3.平滑滾動至頁面頂部

const scrollToTop = () => {
  const c = document.documentElement.scrollTop || document.body.scrollTop
  
  if (c > 0) {
    window.requestAnimationFrame(scrollToTop)
    window.scrollTo(0, c - c / 8)
  }
}

4.獲取當前頁面滾動距離

const getScrollPosition = (el = window) => ({
  x: el.pageXOffset !== undefined ? el.pageXOffset : el.scrollLeft,
  y: el.pageYOffset !== undefined ? el.pageYOffset : el.scrollTop,
})

getScrollPosition() // { x: 0, y: 215 }

5.判斷當前設備是Andoird還是iOS

function getOSType() {
  let u = navigator.userAgent,
    app = navigator.appVersion
  let isAndroid = u.indexOf("Android") > -1 || u.indexOf("Linux") > -1
  let isIOS = !!u.match(/\(i[^]+( U)? CPU.+Mac OS X/)
  
  if (isIOS) {
    return 0
  } else if (isAndroid) {
    return 1
  } else {
    return 2
  }
}

getOSType() // 0

6.格式化貨幣

const formatMoney = (money) => {
  return money.toLocaleString()
}

formatMoney(123456789) // '123,456,789'
formatMoney(123456789.123) // '123,456,789.123'
formatMoney(123) // '123'

7.進入和退出全屏

// 進入全屏
function fullScreen() {
  let el = document.documentElement
  let rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen
  //typeof rfs != "undefined" && rfs
  if (rfs) {
    rfs.call(el)
  } else if (typeof window.ActiveXObject !== "undefined") {
    let wscript = new ActiveXObject("WScript.Shell")
    if (wscript != null) {
      wscript.SendKeys("{F11}")
    }
  }
}
// 退出全屏
function exitScreen() {
  let el = document
  let cfs = el.cancelFullScreen || el.webkitCancelFullScreen || el.mozCancelFullScreen || el.exitFullScreen
  //typeof cfs != "undefined" && cfs
  if (cfs) {
    cfs.call(el)
  } else if (typeof window.ActiveXObject !== "undefined") {
    let wscript = new ActiveXObject("WScript.Shell")
    if (wscript != null) {
      wscript.SendKeys("{F11}")
    }
  }
}
責任編輯:武曉燕 來源: 程序員Sunday
相關推薦

2024-05-28 00:03:00

JavaScript開發

2024-12-05 14:06:29

JS代碼片段

2011-02-22 16:09:53

Eclipse調試

2014-05-13 09:56:24

數據挖掘

2025-01-06 05:10:00

Python數據類型編程

2019-02-12 05:03:18

2022-05-18 09:01:31

JavaScriptEvalErrorURIError

2018-04-27 09:00:00

代碼合并工具開源

2025-05-13 08:20:58

2021-07-05 10:09:52

IT領導者混合工作

2018-09-30 10:00:23

Python編程語言代碼質量

2025-01-21 08:00:00

限流微服務算法

2016-01-25 18:18:54

網絡入侵釣魚郵件郵件安全

2020-10-29 09:00:00

Vue.jsjQuery前端

2020-01-14 08:00:00

.NET緩存編程語言

2022-05-10 08:08:01

find命令Linux

2021-11-19 10:10:14

手機移動設備網絡攻擊

2017-06-14 16:44:15

JavaScript原型模式對象

2017-06-02 09:52:50

2017-08-31 14:57:53

數據庫MySQLJOIN
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 97国产精品 | 日本激情视频在线播放 | 欧美1—12sexvideos | 亚洲一区二区免费视频 | 91在线精品一区二区 | 青草青草久热精品视频在线观看 | 亚洲一区二区 | 在线免费观看黄a | 久久久91精品国产一区二区三区 | 免费黄色av | 国产一区二区视频在线 | 青春草91| 日韩一区二区三区精品 | 精品精品| 成人毛片在线观看 | 一级黄片一级毛片 | 精品中文字幕一区二区三区 | 日本久久久一区二区三区 | 91极品视频| 午夜久久久久久久久久一区二区 | 黄频免费| 羞羞免费网站 | 日韩在线观看一区二区三区 | 日本黄色的视频 | 中文字幕11页| 久久久国产一区二区三区 | 狠狠爱综合网 | 在线播放一区二区三区 | 亚洲一区中文字幕 | 蜜桃视频一区二区三区 | 在线视频国产一区 | 国产精品美女久久久久久免费 | 亚洲精品视频一区二区三区 | 国产丝袜一区二区三区免费视频 | 成人av一区二区亚洲精 | 国产在线网址 | 久久久久久国产精品mv | 麻豆亚洲 | 欧美一区二区三区在线视频 | 日本精品一区二区三区视频 | 日本天天色|