In a single page I'm including only jQuery 3.1.1 and stellar.js for a parallax scrolling effects, but when I try tu use it as $(window).stellar();
I get this error in console:
Uncaught TypeError: f.getClientRects is not a function (jquery-3.1.1.min.js:4)
I tried using the migrate plugin as suggested in many answer, but doesn't solve my problem.
The snippet is just to show you the error.
$(function(){
$('.main').stellar();
});
<div class="main">
<div class="slide"></div>
<div class="slide"></div>
<div class="slide"></div>
</div>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/stellar.js/0.6.2/jquery.stellar.min.js"></script>
stellar.js is failing because of this piece of code:
$(window).load(function() {
var oldLeft = self._getScrollLeft(),
oldTop = self._getScrollTop();
self._setScrollLeft(oldLeft + 1);
self._setScrollTop(oldTop + 1);
self._setScrollLeft(oldLeft);
self._setScrollTop(oldTop);
});
In jquery 3.0 the load event is removed. You can change to on('load', function{});
$(window).on('load', function() {
var oldLeft = self._getScrollLeft(),
oldTop = self._getScrollTop();
self._setScrollLeft(oldLeft + 1);
self._setScrollTop(oldTop + 1);
self._setScrollLeft(oldLeft);
self._setScrollTop(oldTop);
});
Here is a "working" fiddle: https://jsfiddle.net/y19x160g/1/ and by working i just say that isn't throwing an error anymore.
P.S: I don't know exactly what this library is used for.
In that js fiddle i just copied the not-minified script from current GitHub project: https://github.com/markdalgleish/stellar.js/blob/master/src/jquery.stellar.js and modified the load event.
Other reference: https://api.jquery.com/load-event/ - see deprecated
If you don't wan't to change the code in the actual plugin, you can also just add jQuery migrate to the project, I encountered this same issue with the following setup...
jQuery v3.3.1
Stellar.js v0.6.2
Adding jquery-migrate/3.0.1 to the project fixed the issue.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With