23

Often, I'm reading a really long answer, and I scroll down to read it. Then, when I want to vote it up or down, the the voting buttons are farther up the page (because I scrolled down), where I can't see them.

Yes, I could scroll all the way up, which I usually do, but some users might be too lazy to do it. Also, since they can't see the vote button, they might forget to vote. And, it's annoying to have to scroll up, so some users might just not bother to vote.

What I propose is that we implement something similar to what OMGUbuntu does with their sharing buttons. Basically, when the voting buttons are not visible because a user scrolled past them, they should have a fixed position on the screen. However, once a user has scrolled past the answer or question in question, the voting button for that specific answer or question can be hidden again.

More examples: CSSTricks, the FAQ, and this answer (which shows what it will look like on Stack Exchange)

11
  • 2
    Related: ux.stackexchange.com/q/9969/5117
    – casperOne
    Mar 3, 2012 at 14:20
  • This could be useful
    – Ben Brocka
    Mar 3, 2012 at 15:22
  • 4
    God I hate it when sites do this "floating element" thing. I vote "Nay".
    – jscs
    Mar 3, 2012 at 18:49
  • See also: meta.stackexchange.com/q/118549/157163
    – Ambo100
    Mar 3, 2012 at 20:11
  • 2
    A "top of page" link is something different I feel, @Ambo100. And like you answered yourself: that has keyboard shortcut equivalents in all browsers.
    – Arjan
    Mar 4, 2012 at 11:00
  • 3
    @JoshCaswell, Any particular examples that are especially distasteful? I would think that such a behavior could be done tastefully and in such a way as to not make things more cluttered or irritating. I do agree with you that this is often abused, but I also find it very useful when done well (ie. for things that matter to me and not for stupid things like "share this" icon links)
    – cdeszaq
    Mar 5, 2012 at 23:01
  • 1
    @cdeszaq: No examples, sorry. It's just a personal (perhaps unfounded) distaste for a web page not acting like a "document". I just don't feel (note I don't say "think") like scrolling should make the layout change. Buttons, expansion arrows are another thing. If this gets implemented, I'll get used to it.
    – jscs
    Mar 6, 2012 at 1:17
  • 1
    Might this create accessibility issues?
    – Benjol
    Mar 6, 2012 at 7:55
  • status-completed. Blech.
    – jscs
    Jun 4, 2015 at 18:55
  • @JoshCaswell I'm sorry, I hope there's a way to turn it off. Thanks for letting me know though, I had no idea that they were implementing it (after 3 years).
    – user160606
    Jun 5, 2015 at 1:23
  • 1
    Sorry if this has already been posted, but SOX can do that. Apr 25, 2017 at 17:21

1 Answer 1

9
+50

I made a quick prototype you can try. Go to a question page and paste this in the address bar to try it:

javascript:(function(){
    $(window).scroll(function(){
        $("div.vote").each(function(){
            var el = $(this);
            var scrollTop = $(window).scrollTop();
            var p = el.parent();
            var y = Math.min(Math.max(0, scrollTop - p.offset().top), p.height() - el.height());
            el.css("position", "relative");
            el.css("top", y + "px");
        });
    });
})()

It has some issues, but it should at least give you an idea of what it would look like.

2
  • It works but has a noticeable slowdown when scrolling. Mar 4, 2012 at 21:35
  • I just took Hammar's code (which implements this feature) and turned it into a greasemonkey script. Get it at stackapps.com.
    – user160606
    May 6, 2012 at 21:01

You must log in to answer this question.