javascript - Make page scroll inside fixed DIV -
i have main div position: absolute
. , fixed div
.
is possible scroll main div inside fixed div? once scrolling has reached end, begins scrolling parent.
.container { position: absolute; top: 0; bottom: 0; left: 0; right: 0; overflow: auto; } .main { position: relative; overflow: auto; } .right { position: fixed; top: 10px; right: 50%; height:150px; width: 30%; background: yellow; overflow: auto; }
basically want know first if user scrolling or down, setting oldscroll
variable @ beginning of script (0
) again @ end of each scroll event. compare oldscroll
against current scrolling position.
then check if user has reached end of scrollable area. if have, move scroll position 1 , set scroll position parent forward or backward amount (in example use 20).
var oldscroll = 0; document.getelementbyid('scroll').onscroll = function() { if(this.scrolltop > oldscroll && this.scrolltop === this.scrollheight - this.offsetheight) { this.scrolltop--; this.parentnode.scrolltop = this.parentnode.scrolltop + 20; } else if(this.scrolltop < oldscroll && this.scrolltop === 0) { this.scrolltop++; this.parentnode.scrolltop = this.parentnode.scrolltop - 20; } oldscroll = this.scrolltop; }
var oldscroll = 0; document.getelementbyid('scroll').onscroll = function() { if(this.scrolltop > oldscroll && this.scrolltop === this.scrollheight - this.offsetheight) { this.scrolltop--; this.parentnode.scrolltop = this.parentnode.scrolltop + 20; } else if(this.scrolltop < oldscroll && this.scrolltop === 0) { this.scrolltop++; this.parentnode.scrolltop = this.parentnode.scrolltop - 20; } oldscroll = this.scrolltop; }
.container { position: absolute; top: 0; bottom: 0; left: 0; right: 0; overflow: auto; } .main { position: relative; } .right { position: fixed; top: 10px; right: 50%; height:150px; width: 30%; background: yellow; overflow: auto; z-index: 2; }
<div class="container"> <div class="main"> lorem ipsum dolor sit amet justo leo sed sed pulvinar et magna id eget condimentum laborum vel suspendisse. porttitor mattis aenean. accumsan sed adipiscing. amet penatibus rutrum vitae vehicula viverra amet nibh semper nunc libero tincidunt massa vitae sagittis urna consectetuer magna diam parturient. nec nec dolor. venenatis purus quis. in turpis in. officiis hic mauris lorem wisi maecenas. velit sed eget donec placerat vestibulum orci id gravida per neque nibh. nullam sit commodo tincidunt et diam vitae pharetra sed. tempus sit sodales. voluptatem wisi mattis inceptos tellus dolor rhoncus sed et eu turpis torquent ligula eu dui lorem nec accumsan platea lacinia ac. non faucibus per sit in vehicula magna lacus deleniti. tincidunt per aliquam. vestibulum adipiscing laoreet eget eros commodo. laoreet molestie eros in nec sed justo venenatis. eu lorem gravida. nisl non sociis convallis leo. est nunc nisl porta dignissim turpis. sapien sed nulla. amet mi diam. sem risus accumsan. posuere viverra convallis. est @ netus. tortor eget quam. wisi nulla erat vestibulum tempor eu hendrerit vel dolor. aliquam magnis sed etiam felis eros. scelerisque in justo neque ultricies vel eget libero quam vitae metus ante nonummy amet augue velit tellus enim. vitae et ultrices. odio torquent ligula. quam in scelerisque malesuada non. sem enim congue sed odio libero. lacinia commodo feugiat sed nonummy lobortis erat maecenas vivamus. lectus diam pede. eget risus mauris. in dapibus libero suspendisse pellentesque urna. id metus libero. metus id accumsan curabitur id congue. elementum diam placerat posuere vivamus felis. arcu ante vestibulum. orci ut ut magna nibh eu aliquam mi qui vel pretium nullam. tellus ligula malesuada. consequat id nulla. feugiat suscipit ligula dolor amet congue urna etiam amet accumsan consequat distinctio natoque placerat nec. eget lectus mauris molestie fusce dui. vel consectetuer imperdiet tempus @ sed. proin aliquam nec. ligula sit elit eget faucibus cras arcu in rhoncus. lorem id integer. vestibulum nec cum. ligula aliquam tellus elit nisl lectus in diam tortor wisi mauris tempus. fermentum ipsum augue. lectus in nunc vulputate tellus neque tortor erat cursus. congue wisi enim. nam eget dui auctor amet quis donec ipsum nibh. nisl leo magna officia leo nibh. mollis in ornare nec ut. ut nullam urna. quis tortor mauris blandit non corrupti. rutrum in @ id dignissim dictum. duis ac ornare parturient ultrices amet odio feugiat aenean cras mus pede. praesent egestas netus. urna esse pharetra commodi commodo curabitur. lacinia sed etiam ut vel maxime platea porta odio mollis non nisl nulla nullam. vitae impedit pulvinar. sem velit maiores accumsan blandit ut. varius velit ante. leo tincidunt nulla lorem gravida nulla tempus volutpat donec phasellus aliquet nec. sapien tempor id pharetra magna mi. nunc fusce venenatis nam mi nam. eget senectus convallis donec urna suscipit donec natoque lacinia rutrum lorem est adipiscing sed lectus. dictumst faucibus ut. vulputate sodales ipsum. purus vehicula sed vestibulum eget integer. ut turpis tempor integer fusce bibendum sem ipsum rutrum nec in nibh. amet condimentum. commodo fringilla amet sit ut quis. facilisi ac ut id morbi. aut pretium orci donec dui vel risus eros amet quis ut molestiae. molestie nulla sem vestibulum urna aptent aliquam etiam auctor. erat eu duis. imperdiet vestibulum ut. nibh risus fusce viverra wisi lectus. sed curabitur ut vel condimentum fermentum felis suspendisse neque lacus lorem ut massa lacinia. amet nulla est. vitae in vel turpis diam elit lacinia amet quis. sem in. architecto magna sit vel vehicula elit ullam consectetuer non. vel vulputate elit facilisis accumsan justo. ridiculus pharetra fusce. volutpat curabitur. senectus amet in elementum ipsum ut sit eros tellus. phasellus enim metus vestibulum scelerisque mauris donec nisl massa. hendrerit suscipit turpis sed eget quis. mauris wisi aenean amet semper morbi. orci hendrerit vestibulum dolor semper nullam nesciunt amet. erat ac non. accumsan arcu mauris. consectetuer vivamus convallis. vestibulum neque vitae risus vivamus ut. egestas elit eget. venenatis mattis orci. malesuada eget massa vitae est nec lacus et parturient nunc enim curabitur mollis vitae dictumst et malesuada non amet wisi amet sit lacus cras quis accumsan tortor tempore vulputate ante. corrupti est sem dignissim ante vehicula ac cursus in tempus suspendisse at. neque pariatur sed. ac malesuada a. hac duis pellentesque. libero varius fugiat. iaculis aliquam ac eros tempus sit sit in fusce. luctus wisi amet. vestibulum est vitae ut libero massa. eu hendrerit velit. et per massa congue vivamus sapien. nibh nibh pulvinar. libero velit est. et lorem ipsum. pretium sagittis nisl. id ut viverra. arcu dis sapien vehicula amet lacus sodales sagittis quam minim in mauris integer ante eu. nisl id id eget sed molestie nec ac mauris nonummy proin porttitor. vestibulum orci sed in ligula. lorem pede adipiscing massa eu eros proin at. sagittis congue vitae. eu arcu sem. pede cras volutpat faucibus dui. est ridiculus vestibulum blandit dui montes dignissim mauris ac tellus diam. rutrum gravida orci id eget morbi. nec ut mollis. dolore nulla donec. nunc accumsan consectetuer. erat orci vel. primis erat nostra nec laoreet tempor eos porttitor sem hendrerit dignissim venenatis faucibus vel pellentesque. lobortis in mi vitae donec metus faucibus amet viverra @ ut dolor varius felis ante blandit sit litora ac autem ante. pellentesque pede quisque. in nonummy pulvinar. eget nunc quam. massa torquent ut penatibus hendrerit et nulla scelerisque odio dolor vitae quis. in in quam dolor nec arcu. magna vitae feugiat. donec fermentum bibendum. pretium dui dui convallis wisi urna. ipsum tellus ultricies. non ac pretium. in non accumsan purus nec aliquip hendrerit fusce ornare ut turpis quis dictum tincidunt in vestibulum fringilla ad. in et dui. eget tellus quisque arcu varius per tellus neque sit convallis nulla tellus. nam faucibus aliquam. vitae vel sed turpis nascetur ultricies aliquam vitae ultricies sed lobortis vestibulum sapien non eu. sem amet nulla. leo elit ipsum imperdiet sit dictumst. enim turpis vivamus. posuere odio ipsum in augue quisque nisl duis metus. etiam imperdiet curabitur. quis velit arcu. ipsum turpis libero vel donec et. ac risus tempus. cart summary total $0.00 </div> <div class="right" id="scroll"> lorem ipsum dolor sit amet justo leo sed sed pulvinar et magna id eget condimentum laborum vel suspendisse. porttitor mattis aenean. accumsan sed adipiscing. amet penatibus rutrum vitae vehicula viverra amet nibh semper nunc libero tincidunt massa vitae sagittis urna consectetuer magna diam parturient. nec nec dolor. venenatis purus quis. in turpis in. officiis hic mauris lorem wisi maecenas. velit sed eget donec placerat vestibulum orci id gravida per neque nibh. nullam sit commodo tincidunt et diam vitae pharetra sed. tempus sit sodales. voluptatem wisi mattis inceptos tellus dolor rhoncus sed et eu turpis torquent ligula eu dui lorem nec accumsan platea lacinia ac. non faucibus per sit in vehicula magna lacus deleniti. tincidunt per aliquam. vestibulum adipiscing laoreet eget eros commodo. laoreet molestie eros in nec sed justo venenatis. eu lorem gravida. nisl non sociis convallis leo. est nunc nisl porta dignissim turpis. sapien sed nulla. amet mi diam. sem risus accumsan. posuere viverra convallis. est @ netus. tortor eget quam. wisi nulla erat vestibulum tempor eu hendrerit vel dolor. aliquam magnis sed etiam felis eros. scelerisque in justo neque ultricies vel eget libero quam vitae metus ante nonummy amet augue velit tellus enim. vitae et ultrices. odio torquent ligula. quam in scelerisque malesuada non. sem enim congue sed odio libero. lacinia commodo feugiat sed nonummy lobortis erat maecenas vivamus. lectus diam pede. eget risus mauris. in dapibus libero suspendisse pellentesque urna. id metus libero. metus id accumsan curabitur id congue. elementum diam placerat posuere vivamus felis. arcu ante vestibulum. orci ut ut magna nibh eu aliquam mi qui vel pretium nullam. tellus ligula malesuada. consequat id nulla. feugiat suscipit ligula dolor amet congue urna etiam amet accumsan consequat distinctio natoque placerat nec. eget lectus mauris molestie fusce dui. vel consectetuer imperdiet tempus @ sed. proin aliquam nec. ligula sit elit eget faucibus cras arcu in rhoncus. lorem id integer. vestibulum nec cum. ligula aliquam tellus elit nisl lectus in diam tortor wisi mauris tempus. fermentum ipsum augue. lectus in nunc vulputate tellus neque tortor erat cursus. congue wisi enim. nam eget dui auctor amet quis donec ipsum nibh. nisl leo magna officia leo nibh. mollis in ornare nec ut. ut nullam urna. quis tortor mauris blandit non corrupti. rutrum in @ id dignissim dictum. duis ac ornare parturient ultrices amet odio feugiat aenean cras mus pede. praesent egestas netus. urna esse pharetra commodi commodo curabitur. lacinia sed etiam ut vel maxime platea porta odio mollis non nisl nulla nullam. vitae impedit pulvinar. sem velit maiores accumsan blandit ut. varius velit ante. leo tincidunt nulla lorem gravida nulla tempus volutpat donec phasellus aliquet nec. sapien tempor id pharetra magna mi. nunc fusce venenatis nam mi nam. eget senectus convallis donec urna suscipit donec natoque lacinia rutrum lorem est adipiscing sed lectus. dictumst faucibus ut. vulputate sodales ipsum. purus vehicula sed vestibulum eget integer. ut turpis tempor integer fusce bibendum sem ipsum rutrum nec in nibh. amet condimentum. commodo fringilla amet sit ut quis. facilisi ac ut id morbi. aut pretium orci donec dui vel risus eros amet quis ut molestiae. molestie nulla sem vestibulum urna aptent aliquam etiam auctor. erat eu duis. imperdiet vestibulum ut. nibh risus fusce viverra wisi lectus. sed curabitur ut vel condimentum fermentum felis suspendisse neque lacus lorem ut massa lacinia. amet nulla est. vitae in vel turpis diam elit lacinia amet quis. sem in. architecto magna sit vel vehicula elit ullam consectetuer non. vel vulputate elit facilisis accumsan justo. ridiculus pharetra fusce. volutpat curabitur. senectus amet in elementum ipsum ut sit eros tellus. phasellus enim metus vestibulum scelerisque mauris donec nisl massa. hendrerit suscipit turpis sed eget quis. mauris wisi aenean amet semper morbi. orci hendrerit vestibulum dolor semper nullam nesciunt amet. erat ac non. accumsan arcu mauris. consectetuer vivamus convallis. vestibulum neque vitae risus vivamus ut. egestas elit eget. venenatis mattis orci. malesuada eget massa vitae est nec lacus et parturient nunc enim curabitur mollis vitae dictumst et malesuada non amet wisi amet sit lacus cras quis accumsan tortor tempore vulputate ante. corrupti est sem dignissim ante vehicula ac cursus in tempus suspendisse at. neque pariatur sed. ac malesuada a. hac duis pellentesque. libero varius fugiat. iaculis aliquam ac eros tempus sit sit in fusce. luctus wisi amet. vestibulum est vitae ut libero massa. eu hendrerit velit. et per massa congue vivamus sapien. nibh nibh pulvinar. libero velit est. et lorem ipsum. pretium sagittis nisl. id ut viverra. arcu dis sapien vehicula amet lacus sodales sagittis quam minim in mauris integer ante eu. nisl id id eget sed molestie nec ac mauris nonummy proin porttitor. vestibulum orci sed in ligula. lorem pede adipiscing massa eu eros proin at. sagittis congue vitae. eu arcu sem. pede cras volutpat faucibus dui. est ridiculus vestibulum blandit dui montes dignissim mauris ac tellus diam. rutrum gravida orci id eget morbi. nec ut mollis. dolore nulla donec. nunc accumsan consectetuer. erat orci vel. primis erat nostra nec laoreet tempor eos porttitor sem hendrerit dignissim venenatis faucibus vel pellentesque. lobortis in mi vitae donec metus faucibus amet viverra @ ut dolor varius felis ante blandit sit litora ac autem ante. pellentesque pede quisque. in nonummy pulvinar. eget nunc quam. massa torquent ut penatibus hendrerit et nulla scelerisque odio dolor vitae quis. in in quam dolor nec arcu. magna vitae feugiat. donec fermentum bibendum. pretium dui dui convallis wisi urna. ipsum tellus ultricies. non ac pretium. in non accumsan purus nec aliquip hendrerit fusce ornare ut turpis quis dictum tincidunt in vestibulum fringilla ad. in et dui. eget tellus quisque arcu varius per tellus neque sit convallis nulla tellus. nam faucibus aliquam. vitae vel sed turpis nascetur ultricies aliquam vitae ultricies sed lobortis vestibulum sapien non eu. sem amet nulla. leo elit ipsum imperdiet sit dictumst. enim turpis vivamus. posuere odio ipsum in augue quisque nisl duis metus. etiam imperdiet curabitur. quis velit arcu. ipsum turpis libero vel donec et. ac risus tempus. cart summary total $0.00 </div> </div>
Comments
Post a Comment