i have simple bootstrap row 2 columns:
<div class="row"> <div class="col-xs-7"> <p>all way you</p> </div> <div class="col-xs-5" id="stay"> <p>so happy go</p> </div> </div> <div id="stop"> <p>don't go here.</p> </div>
thanks script, column id #stay follow first column way down:
$(document).ready(function() { (function($) { var element = $('#stay'), originaly = element.offset().top; // space between element , top of screen (when scrolling) var topmargin = 10; // should set in css; here emphasis element.css('position', 'relative'); $(window).on('scroll', function(event) { var scrolltop = $(window).scrolltop(); element.stop(false, false).animate({ top: scrolltop < originaly ? 0 : scrolltop - originaly + topmargin }, 300); }); })(jquery); });
here example: https://jsfiddle.net/16vqvqev/7/ . want accomplish stop column following down once reach div id #stop.
- how can make js?
- i tried affix bootstrap didn't go far either... how in case?
edit: website has content before row sticky column, code this: https://jsfiddle.net/16vqvqev/11/
your issue fixed slight adjustment if statement, instead of checking height of window made check final position screen has moved , according either stick top of #stop or scroll did before
https://jsfiddle.net/dmitri_aleksejev/16vqvqev/8/
top: scrolltop - originaly + topmargin + element.height() + parseint(element.css("padding-bottom")) > end ? element.css("top", end - $(element).height() - 60) : scrolltop - originaly + topmargin
instead of:
top: scrolltop < originaly ? 0 : scrolltop - originaly + topmargin
Comments
Post a Comment