Enter-view.js Demo
Dependency-free JavaScript library to detect when element enters into view
Start scrolling to see examples.
Default (no offset)
enterView({
selector: '.block-a',
enter: function(el) {
el.classList.add('entered');
}
});
.block-a
50% offset
enterView({
selector: '.block-b',
offset: 0.5,
enter: function(el) {
el.classList.add('entered');
}
});
.block-b
75% offset, trigger every time
var count = 0;
enterView({
selector: '.block-c',
offset: '0.75,
enter: function(el) {
el.classList.add('entered');
count += 1;
el.querySelector('span').innerText = count;
}
});
.block-c (0)
Multiple elements, 50% offset
enterView({
selector: '.block-d',
offset: 0.5,
enter: function(el) {
el.classList.add('entered');
}
});
.block-d
.block-d
.block-d
Exit element, 50% offset
enterView({
selector: '.block-e',
offset: 0.5,
enter: function(el) {
el.classList.add('entered');
},
exit: function(el) {
el.classList.remove('entered');
},
});
.block-e
Progress increments, 50% offset
enterView({
selector: '.block-f',
offset: 0.5,
enter: function(el) {
el.classList.add('entered');
},
progress: function(el, progress) {
var p = el.querySelector('.progress')
p.innerText = progress.toFixed(2);
}
});
.block-f