易笔记易笔记
首页
文章
分类
标签
首页
文章
分类
标签
cesium 2JS 2前端 1Electron 1PHP 1CSS 6ThreeJS 1Vue 3Vue3 3Windows 4
移除匿名事件监听

window.addEventListener("onDrawSucceeded", function (c) {
      window.removeEventListener("onDrawSucceeded", arguments.callee)
 })
分类: JS标签: JS
日期: 2021/10/8
光标处插入文本

function insert() {
  let element = document.getElementById('text')
      let value = '_'
      // IE support
      if (document.selection) {
        console.log('ie')
        element.focus()
        let sel = document.selection.createRange()
        sel.text = value
      } else if (element.selectionStart || element.selectionStart === '0') { // MOZILLA and others
        console.log('modern')
        let startPos = element.selectionStart
        let endPos = element.selectionEnd
        element.value = element.value.substring(0, startPos) + value + element.value.substring(endPos, element.value.length)
        element.selectionStart = startPos + value.length
        element.selectionEnd = startPos + value.length
      } else {
        element.value += value
      }
}
分类: JS标签: JS
日期: 2022/5/19
防抖(Debounce)与节流(Throttle)

在前端开发中,我们经常会遇到一些频繁触发的事件,如窗口的 resize、scroll,输入框的 input,鼠标的 mousemove 等。如果这些事件的处理函数执行频率过高,可能会导致页面卡顿、性能下降等问题。为了解决这些问题,我们可以使用两种常见的优化技术:防抖(Debounce)和节流(Throttle)。

什么是防抖(Debounce)

防抖是一种限制函数执行频率的技术,它确保函数在一段时间内只执行一次。当事件被触发时,函数并不会立即执行,而是等待一段时间,如果在这段时间内事件再次被触发,则重新计时。只有当事件停止触发一段时间后,函数才会真正执行。

分类: 前端标签: JS
日期: 2025/9/26