Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.7k views
in Technique[技术] by (71.8m points)

节流函数为什么,点击无效,监听窗口大小却有效?

网上抄来的节流函数
两种触发方式一种是window.onresize = throttle(resizehandler, 100, 500);
第二种是<div class="cm-btn sub cp" onclick="resizehandler()">确定</div>
为什么第一种能节流,第二种,却无效

function throttle(method, delay, duration) {
        var timer = null,
            begin = new Date();
        return function() {
            var context = this,
                args = arguments,
                current = new Date();;
            clearTimeout(timer);
            if (current - begin >= duration) {
                method.apply(context, args);
                begin = current;
            } else {
                timer = setTimeout(function() {
                    method.apply(context, args);
                }, delay);
            }
        }
    }

    function resizehandler() {
        console.log(new Date().getTime());
    }
    window.onresize = throttle(resizehandler, 100, 500);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

你第二种并没有使用节流啊


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...