zoukankan      html  css  js  c++  java
  • 精简版自定义 jquery

        function $(id) {
            var el = 'string' == typeof id ?
                document.getElementById(id) :
                id;
    
            el.on = function(event, fn) {
                if ('content loaded' == event) {
                    event = window.attachEvent ? "load" : "DOMContentLoaded";
                }
                el.addEventListener ?
                    el.addEventListener(event, fn, false) :
                    el.attachEvent("on" + event, fn);
            };
    
            el.all = function(selector) {
                return $(el.querySelectorAll(selector));
            };
    
            el.each = function(fn) {
                for (var i = 0, len = el.length; i < len; ++i) {
                    fn($(el[i]), i);
                }
            };
    
            el.getClasses = function() {
                return this.getAttribute('class').split(/s+/);
            };
    
            el.addClass = function(name) {
                var classes = this.getAttribute('class');
                el.setAttribute('class', classes ?
                    classes + ' ' + name :
                    name);
            };
    
            el.removeClass = function(name) {
                var classes = this.getClasses().filter(function(curr) {
                    return curr != name;
                });
                this.setAttribute('class', classes.join(' '));
            };
    
            return el;
        }
    
        function search() {
            var str = $('search').value.toLowerCase();
            var links = $('files').all('a');
    
            links.each(function(link) {
                var text = link.textContent.toLowerCase();
    
                if ('..' == text) return;
                if (str.length && ~text.indexOf(str)) {
                    link.addClass('highlight');
                } else {
                    link.removeClass('highlight');
                }
            });
        }
    
        $(window).on('content loaded', function() {
            $('search').on('keyup', search);
        });
  • 相关阅读:
    Object类学习
    Thread.State 线程状态
    Thread.UncaughtExceptionHandler
    apply和call的区别
    如何实现border-width:0.5px;
    table固定头部,表格tbody可上下左右滑动
    canvas画布实现手写签名效果
    ES6学习笔记
    for循环中执行setTimeout问题
    javaScript函数提升及作用域
  • 原文地址:https://www.cnblogs.com/webenh/p/7535322.html
Copyright © 2011-2022 走看看