Pin to browser only after scrolling


#1

Hi there,
I’m using the “pin to browser” feature a lot, but I’ve had a case where the panel I wish to pin, is located a bit below the screen’s “fold” and I wish that only after the scroll, (after the panel is fully revealed) the panel will start “floating” till the end of the page, and when scrolling back to the top of the page, to go back to its location .
Is it possible?

(After few attempts) For this topic, I’ve created a new rp where I created a panel located it below the screen size (panel A), I duplicated it (Panel B), then I moved (Panel B) 150px upwards so it will be fully revealed on screen, pinned it to the browser and set as hidden. Then I clicked on the background, added an OnScrollDown command with a condition: if [[window scrollY]] as grater than 150, show (Panel B) and hide (panel A) and wrote a “mirrorr” command for the OnScrollUp. So now this problem is solved, I just wonder, is there a simpler way to do it?


#2

To my knowledge, this has always been the way to accomplish it. There are no conditionals for “Pin to browser” so anytime you want something to pin based on view of the screen, you have to have the pinned DP become visible at the particular scroll position.


#3

Hi!

Agreed that this is the standard way of accomplishing it, but it’s a pain because you have to keep your “real” and your “pinned” dynamic panels in sync, content-wise.

A way to do it with a single (non-pinned) panel is the following, which performs great in Chrome and not-so-great in other browsers. If your DP is called “stickToTop” and its normal location is y = 600, the following will work:

OnWindowScroll
  Move stickToTop to (x) [[ Target.left ]] (y) [[ Math.max(Window.scrollY, 600) ]]

Be sure to use move to and not move by.


#4

Thanks a lot Joseph! your solution is much better!