不使用CSS,将元素与浏览器屏幕顶部保持一定距离?

时间:2016-04-21 21:41:06

标签: javascript jquery css twitter-bootstrap

我正在使用Bootstraps模式,因此添加position:fixed无效。

我有一个指向模态触发元素的箭头元素。我希望此箭头指向触发器在屏幕上的任何位置。

我可以很容易地做到这一点:

$("[data-toggle='modal']").click(function() {
    triggerpos = $(this).offset().top;
    $('.modal-arrow').css('top', triggerpos + "px");
}); 

问题在于,如果存在导致用户滚动的长模态,则箭头不会保持固定;当用户滚动时,它随着模态移动。

看我的小提琴:https://jsfiddle.net/umv4jhLg/22/

当然我已尝试过使用CSS的各种安排,但没有结果。

我也试过在窗口滚动上调整它:

$(window).scroll(function(){
  var triggerpos = $(this).offset().top;
    $('.modal-arrow').css('top', triggerpos + "px");  
})

但没有结果。

有人知道我可以使用Jquery保持.modal-arrow稳定吗?

1 个答案:

答案 0 :(得分:0)

使用.scrollTop()

进行尝试

将其添加到您的首位