mirror of
https://github.com/jcreek/phldnhack.git
synced 2026-07-13 02:53:44 +00:00
Added the SCSS Materialize files
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
(function($) {
|
||||
|
||||
// Input: Array of JSON objects {selector, offset, callback}
|
||||
|
||||
Materialize.scrollFire = function(options) {
|
||||
|
||||
var didScroll = false;
|
||||
|
||||
window.addEventListener("scroll", function() {
|
||||
didScroll = true;
|
||||
});
|
||||
|
||||
// Rate limit to 100ms
|
||||
setInterval(function() {
|
||||
if(didScroll) {
|
||||
didScroll = false;
|
||||
|
||||
var windowScroll = window.pageYOffset + window.innerHeight;
|
||||
|
||||
for (var i = 0 ; i < options.length; i++) {
|
||||
// Get options from each line
|
||||
var value = options[i];
|
||||
var selector = value.selector,
|
||||
offset = value.offset,
|
||||
callback = value.callback;
|
||||
|
||||
var currentElement = document.querySelector(selector);
|
||||
if ( currentElement !== null) {
|
||||
var elementOffset = currentElement.getBoundingClientRect().top + window.pageYOffset;
|
||||
|
||||
if (windowScroll > (elementOffset + offset)) {
|
||||
if (value.done !== true) {
|
||||
var callbackFunc = new Function(callback);
|
||||
callbackFunc();
|
||||
value.done = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}, 100);
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
Reference in New Issue
Block a user