newPromise / js-

0 stars 0 forks source link

mint-UI 中的一些函数问题 #37

Open newPromise opened 6 years ago

newPromise commented 6 years ago

mint-ui 中的 utils/dom.js

一些dom 操作

  1. js 中的注册时间
    const on = (function () {
    if (document.addEventListener) {
    return function (element, event, handler) {
      if (element && event && handler) {
        element.addEventListener(event, handler, event);
      }
    }
    } else {
    return function (element, event, handler) {
      if (element, event, handler) {
        element.attachEvent('on' + event, handler);
      }
    }
    }
    })();
  2. 判断元素是否存在相应的 class 属性;
    export function hasClass(el, cls) {
    if (!el || !cls) return false;
    if (cls.indexOf(' ') !== -1) throw new Error('className should not contain space.');
    // 对于classList 存在的情况先使用 classList 进行判断
    if (el.classList) {
    return el.classList.contains(cls);
    } else {
    // 如果 `el.classList` 没有存在的时候, 使用下面的方法进行判断
    // 通过判断 `className` 中是否含有  cls 这个的 class 进行判断
    // 因为使用 `className`  获得到的是一系列类名的字符串
    return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
    }
    };

    对于使用 classList 可以很方便的判断元素是否含有相应的 class 值, 其中 classList 返回的是一个元素的 className 数组。