判断一个可滚动元素是否滚动到了底部,将源对象合并到目标对象中去,判断是否为字符串

function isScrollToBottom(e, fn) {
    // e.srcElement存在兼容性问题,并非标准特性
    // https://developer.mozilla.org/zh-CN/docs/Web/API/Event/target
    // 支持 IE6-8
    var target_ = e.target || e.srcElement,
        // 距离顶部高度
        scrollTop = target_.scrollTop,
        // 滚动区域高度
        scrollHeight = target_.scrollHeight,
        // 文档元素高度
        clientHeight = target_.clientHeight;
    // 文档坐标和视口坐标转换,判断元素滚动到了底部
    if(scrollTop + clientHeight == scrollHeight) {
        if(fn) {
            fn.call();
        }
    }
}
将源对象合并到目标对象中去
 * src: 源对象
 * to: 目标对象
 * return 目标对象
 * a = {"a": "a"}
 * b = {"b": "b"}
 * extend_(b, a) → {a: "a", b: "b"}
 */
function extend_(srcObj, toObj) {
    for(var key in srcObj) {
        toObj[key] = toObj[key];
    }
    return toObj;
}
判断是否为字符串
function isString_(o) {
return Object.prototype.toString.call(o) === "[object String]";
}
原文地址:https://www.cnblogs.com/missguolf/p/8484437.html