IE兼容性问题,目前已兼容到IE9
parent
551eeb0390
commit
e4407467dd
|
@ -1,41 +1,65 @@
|
|||
function isInSight(el) {
|
||||
const bound = el.getBoundingClientRect();
|
||||
const clientHeight = window.innerHeight;
|
||||
//只考虑向下滚动加载
|
||||
//const clientWidth=window.innerWeight;
|
||||
return bound.top <= clientHeight + 100;
|
||||
var bound = el.getBoundingClientRect();
|
||||
var clientHeight = window.innerHeight;
|
||||
//只考虑向下滚动加载
|
||||
//const clientWidth=window.innerWeight;
|
||||
return bound.top <= clientHeight + 100;
|
||||
}
|
||||
|
||||
let index = 0;
|
||||
var index = 0;
|
||||
|
||||
function checkImgs() {
|
||||
const imgs = document.querySelectorAll('.my-photo');
|
||||
for (let i = index; i < imgs.length; i++) {
|
||||
if (isInSight(imgs[i])) {
|
||||
loadImg(imgs[i]);
|
||||
index = i;
|
||||
var imgs = document.querySelectorAll('.my-photo');
|
||||
for (var i = index; i < imgs.length; i++) {
|
||||
if (isInSight(imgs[i])) {
|
||||
loadImg(imgs[i]);
|
||||
index = i;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function loadImg(el) {
|
||||
const source = el.dataset.src;
|
||||
el.src = source;
|
||||
var source = el.getAttribute("data-src");
|
||||
el.src = source;
|
||||
}
|
||||
// var mustRun = 500
|
||||
// function throttle(fn, mustRun) {
|
||||
// var timer = null;
|
||||
// var previous = null;
|
||||
// return function() {
|
||||
// var now = new Date();
|
||||
// var context = this;
|
||||
// var args = arguments;
|
||||
// if (!previous) {
|
||||
// previous = now;
|
||||
// }
|
||||
// var remaining = now - previous;
|
||||
// if (mustRun && remaining >= mustRun) {
|
||||
// fn.apply(context, args);
|
||||
// previous = now;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
function throttle(fn) {
|
||||
var timer = null;
|
||||
var previous = null;
|
||||
return function () {
|
||||
var now = new Date();
|
||||
var context = this;
|
||||
var args = arguments;
|
||||
if (!previous) {
|
||||
previous = now;
|
||||
}
|
||||
var remaining = now - previous;
|
||||
setTimeout(refresh(fn, remaining, context, args, previous, now));
|
||||
}
|
||||
}
|
||||
|
||||
function throttle(fn, mustRun = 500) {
|
||||
const timer = null;
|
||||
let previous = null;
|
||||
return function() {
|
||||
const now = new Date();
|
||||
const context = this;
|
||||
const args = arguments;
|
||||
if (!previous) {
|
||||
previous = now;
|
||||
function refresh(fn, remaining, context, args, previous, now) {
|
||||
if (remaining >= 500) {
|
||||
fn.apply(context, args);
|
||||
previous = now;
|
||||
}
|
||||
const remaining = now - previous;
|
||||
if (mustRun && remaining >= mustRun) {
|
||||
fn.apply(context, args);
|
||||
previous = now;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue