[{"data":1,"prerenderedAt":298},["ShallowReactive",2],{"project-5443822":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":33,"aspects":34,"strip":41,"post_text":42,"what":43,"said":71,"maker_in_thread":168,"shape":175,"grid":180,"attempts":260,"same_week":261,"maker_shows":32,"maker_hidden":290,"reader_version":291,"card":292},"5443822","jQuery.pin","a plugin for making stuff stick","title","Show HN: jQuery.pin – a plugin for making stuff stick","http:\u002F\u002Fwebpop.github.com\u002Fjquery.pin\u002F","webpop.github.com","bobfunk",1364310906,2013,65,36,392,1739,23,"notable","languages","jquery plugin","library",[21,24,25,26],"sticky element","scroll pinning","javascript","mixed",-0.333,{"positive":30,"neutral":31,"mixed":31,"critical":32},0,3,4,10,{"performance":35,"idea":37,"docs":38,"execution":39},{"positive":30,"critical":36},1,{"positive":30,"critical":36},{"positive":30,"critical":30},{"positive":30,"critical":40},2,[36,31,31,30,30,31,31,36,30,36,31,30,30,30,30,36,30,31,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30],null,{"problem":44,"audience":42,"pricing":42,"motivation":51,"time_to_build":42,"stack":55,"openness":69,"stage":70,"team_size":69},{"value":45,"source":46,"evidence":47},"Making an element stick to the top while scrolling, unpinning at a container's bottom.","maker",[48],{"id":49,"by":11,"text":50},"5444200","The difference is being able to specify a containing element, so the pinned part gets unpinned once you scroll past the bottom of the container. We first developed the plugin for…",{"value":52,"source":46,"evidence":53},"Built for the Webpop gallery page to keep screenshot descriptions pinned while viewing.",[54],{"id":49,"by":11,"text":50},[56,64],{"value":57,"source":58,"evidence":59},"JavaScript","commenter",[60],{"id":61,"by":62,"text":63},"5444173","mattmanser","Could do with some smoothing and polishing. Jerks all over the place. Also, what is with this new fashion of declaring functions as anonymous methods? ``` var recalculateLimits =…",{"value":65,"source":46,"evidence":66},"jQuery",[67],{"id":68},"post","unknown","launched",{"praise":72,"objections":81,"requests":110,"questions":118,"alternatives":126},[73],{"value":74,"source":58,"evidence":75},"Well-done plugin and good code",[76,80],{"id":77,"by":78,"text":79},"5444848","kevincennis","For anyone wondering \"why do we need jQuery plugins for simple things like this?\", you may be interested in position: sticky. Here's an article:…",{"id":61,"by":62,"text":63},[82,89,96,106],{"value":83,"source":58,"evidence":84},"Scroll handler may hurt performance; throttling suggested",[85],{"id":86,"by":87,"text":88},"5446285","kemayo","As a best-practices criticism, this is using a direct window scroll handler, which can be a bit of a performance nightmare. It's often better to use some sort of throttling to…",{"value":90,"source":58,"evidence":91},"Does not work when sticky block is taller than window",[92],{"id":93,"by":94,"text":95},"5446281","dmitrypolushkin","This and all other solutions on this page doesn't work, when sticky block height is more than window height. Always showed the top of the block, but it should be scrolled to the…",{"value":97,"source":58,"evidence":98},"Did not work on IE10 until fixed",[99,103],{"id":100,"by":101,"text":102},"5444443","opayen","Doesn't work on IE10",{"id":104,"by":11,"text":105},"5445260","Pushed a fix - should work in IE10 as well now.",{"value":107,"source":58,"evidence":108},"Jerky scrolling with mouse scroll button",[109],{"id":61,"by":62,"text":63},[111],{"value":112,"source":58,"evidence":113},"Working mobile browser support",[114],{"id":115,"by":116,"text":117},"5445100","websirnik","Is there something like this that works properly in the mobile browser?",[119],{"value":120,"source":58,"evidence":121},"How does it compare to Bootstrap affix?",[122],{"id":123,"by":124,"text":125},"5444053","WickyNilliams","How does this compare to say Bootstrap's affix plugin? I see that it supports a min-width property, but personally I'd rather deal with this myself via media queries (matchMedia…",[127,135,139,150,157,164],{"value":128,"source":58,"evidence":129},"Bootstrap affix",[130,134],{"id":131,"by":132,"text":133},"5444564","smickie","This is good but there are some more mature solutions out there, bootstrap has a very basic 'affix' plugin built in. However I have found the waypoints plugin to be absolutely…",{"id":123,"by":124,"text":125},{"value":136,"source":58,"evidence":137},"Waypoints",[138],{"id":131,"by":132,"text":133},{"value":140,"source":58,"evidence":141},"ScrollToFixed",[142,146],{"id":143,"by":144,"text":145},"5445270","dagi3d","another similar plugin: https:\u002F\u002Fgithub.com\u002Fbigspotteddog\u002FScrollToFixed",{"id":147,"by":148,"text":149},"5446118","bink-lynch","I have had reports that https:\u002F\u002Fgithub.com\u002Fbigspotteddog\u002FScrollToFixed runs on mobile. Here are the confirmed combos: - iPad 4 running iOS 6.0 (10A403) with…",{"value":151,"source":58,"evidence":152},"sticky-panel",[153],{"id":154,"by":155,"text":156},"5444347","DonnyV","I built something like this about a year ago called sticky-panel. https:\u002F\u002Fcode.google.com\u002Fp\u002Fsticky-panel\u002F Mine only has a couple added features like before and after detach…",{"value":158,"source":58,"evidence":159},"jquery-floating-widget",[160],{"id":161,"by":162,"text":163},"5445054","leeoniya","every time this kind of plugin comes up, i link to this one from years ago https:\u002F\u002Fgithub.com\u002Fterkel\u002Fjquery-floating-widget",{"value":165,"source":58,"evidence":166},"CSS position: sticky",[167],{"id":77,"by":78,"text":79},{"comments":31,"answered":36,"key":169},[170,173,174],{"id":171,"text":172},"5444673","Waypoints is more mature and can do much more complex stuff, but as with my earlier response about affix, for our use-case of pinning an unpinning the descriptions of the…",{"id":49,"text":50},{"id":104,"text":105},{"commenters":176,"max_depth":177,"maker_replies":31,"first_comment_mins":178,"lifespan_hours":179},22,7,32,221,[181,183,185,186,188,190,194,196,198,199,202,205,207,208,210,212,214,216,218,221,223,226,229,231,233,236,238,240,243,245,247,249,252,255,258],[86,30,36,182,87,30],"project\u002Fcritical\u002Fperformance",[77,36,31,184,78,30],"project\u002Fmixed\u002Fidea",[131,40,31,184,132,30],[171,40,30,187,11,36],"maker\u002Fneutral\u002Fidea",[154,31,30,189,155,30],"commenter\u002Fneutral\u002Fidea",[191,31,31,192,193,30],"5448043","project\u002Fneutral\u002Fdocs","UntitledNo4",[195,31,31,192,155,30],"5494826",[123,32,36,197,124,30],"project\u002Fcritical\u002Fidea",[49,32,30,187,11,36],[93,200,36,201,94,30],5,"project\u002Fcritical\u002Fexecution",[115,203,31,204,116,30],6,"project\u002Fneutral\u002Fexecution",[147,203,30,206,148,30],"commenter\u002Fneutral\u002Fnone",[143,177,30,206,144,30],[209,177,30,206,148,30],"5446097",[161,211,30,206,162,30],8,[100,213,36,201,101,30],9,[104,213,30,215,11,36],"maker\u002Fneutral\u002Fexecution",[61,33,31,217,62,30],"project\u002Fmixed\u002Fexecution",[219,33,30,206,220,30],"5444196","prezjordan",[222,33,30,206,62,30],"5444257",[224,33,30,206,225,30],"5445463","jonahx",[227,33,30,206,228,30],"5445890","piva00",[230,33,30,206,62,30],"5450428",[232,33,30,206,225,30],"5445490",[234,33,30,206,235,30],"5444474","hkuo",[237,33,30,206,62,30],"5444643",[239,33,30,206,235,30],"5444721",[241,33,30,206,242,30],"5444782","nkozyra",[244,33,30,206,225,30],"5444957",[246,33,30,206,242,30],"5446188",[248,33,30,206,62,30],"5450411",[250,33,30,206,251,30],"5445006","flaviojuvenal",[253,33,30,206,254,30],"5444973","gjulianm",[256,33,30,206,257,30],"5444501","fabriceleal",[259,33,30,206,62,30],"5444703",[],[262,267,271,276,281,285],{"id":263,"name":264,"points":265,"category":266},"5424206","Heap",339,"web_saas",{"id":268,"name":269,"points":270,"category":266},"5434186","My side project",248,{"id":272,"name":273,"points":274,"category":275},"5438241","Framebase.io",205,"data",{"id":277,"name":278,"points":279,"category":280},"5427833","Bateman",169,"finance_crypto",{"id":282,"name":283,"points":284,"category":266},"5445029","itch.io",155,{"id":286,"name":287,"points":288,"category":289},"5428720","Uslide",113,"dev_tools",false,"v2",{"id":293,"name":5,"line":6,"ai":290,"cat":20,"year":13,"points":14,"comments":15,"rec":27,"s":294,"top":18,"kw":295,"maker":11,"domain":10,"tier":19,"attempts":30,"strip":296,"url":9,"mix":297,"praise":74,"objection":83,"sub":21},5443822,-0.33,[21,24,25,26],"13300331013000010300000000000000000",[30,31,31,32],1794036505286]