For anyone interested, here's the helper function I came up with: function stickyBothDirections(element, vars) { vars = vars || {}; element = gsap.utils.toArray(element)[0]; let keywords = {top: "0", center: "50%", bottom: "100%"}, overlap, topOffset, updateOverlap = () => { topOffset = ((typeof(vars.start) === "function" ? vars.start() : vars.start || "0 0") + "").split(" ")[1] || "0"; topOffset = keywords[topOffset] || topOffset; topOffset = ~to
    • Like
    4