分类 JS 的文章 累计 34 条

dhso dhso 统计中 2019-02-27 11:10

JS判断dom元素是否在可视范围内

function isElementInViewport (el, offset = 0) {
    const box = el.getBoundingClientRect(),
          top = (box.top >= 0),
          left = (box.left >= 0),
          bottom = (box.bottom <= (window.innerHeight || document.documentElement.clientHeight) + offset),
          right = (box.right <= (window.innerWidth || document.documentElement.clientWidth) + offset);
    return (top && left && bottom && right);
}
[ 阅读更多 ]
dhso dhso 统计中 2018-12-11 15:56

JS 模拟点击链接打开新页面

let hrefElement = document.createElement('a')
hrefElement.setAttribute('href', 'http://www.baidu.com')
hrefElement.setAttribute('target', '_blank')
let mouseEvents = document.createEvent('MouseEvents')
mouseEvents.initEvent('click', true, true)
hrefElement.dispatchEvent(mouseEvents)
[ 阅读更多 ]
dhso dhso 统计中 2018-06-27 16:57

fs递归删除文件或者文件夹

function deleteRecursive(path) {
  if (fs.existsSync(path)) {
    //  file
    if (fs.statSync(path).isFile()) {
      fs.unlinkSync(path);
      return;
    }
    // directory
    let files = [];
    if (fs.statSync(path).isDirectory()) {
      files = fs.readdirSync(path);
      files.forEach(function (file, index) {
        deleteRecursive(path + "/" + file);
      });
      fs.rmdirSync(path);
    }
  }
};
[ 阅读更多 ]
dhso dhso 统计中 2018-06-14 14:58

js实现html转成pdf代码

引入依赖

import html2canvas from 'html2canvas';
import jsPDF from 'jspdf';

html2pdf方法

html2pdf(fileName) {
        fileName = typeof (fileName) == 'string' ? fileName : `pdf_${new Date().getTime()}`;
        html2canvas(document.body).then(function (canvas) {
            let contentWidth = canvas.width,
                contentHeight = canvas.height,
                //一页pdf显示html页面生成的canvas高度;
                pageHeight = contentWidth / 592.28 * 841.89,
                //未生成pdf的html页面高度
                leftHeig
[ 阅读更多 ]
dhso dhso 统计中 2018-05-28 11:37

js常见缩写语法

初级篇

1、三目运算符

下面是一个很好的例子,将一个完整的 if 语句,简写为一行代码。

const x = 20;
let answer;
if (x > 10) {
    answer = 'greater than 10';
} else {
    answer = 'less than 10';
}

简写为:

const answer = x > 10 ? 'greater than 10' : 'less than 10';

2、循环语句

当使用纯 JavaScript(不依赖外部库,如 jQuery 或 lodash)时,下面的简写会非常有用。

for (let i = 0; i < allImgs.length; i++)

简写为:

for (let index of allImgs)

下面是遍历数组 forEach 的简写示例:

function logArrayElements(element, index, array) {
  console.log("a[" + index + "] = " + element);
[ 阅读更多 ]
博客介绍
写好程序在于点滴积累,多做笔记!
热评文章
最新评论