javascript - jQuery - 无论滚动多低,屏幕上都会出现弹出框

标签 javascript jquery html css jquery-ui

我正在尝试在非常靠近浏览器底部的元素列表上创建一个弹出框。

我希望 POPUP 位于用户所在页面的中心,无论他们滚动到多低

我必须使用 POSITION ABSOLUTE not FIXED

但是当我使用 POSITION ABSOLUTE 时,弹出窗口总是出现在顶部,我知道它是由于我的顶部:0

.lightbox-container{
  border: solid red 1px;
  width: 100px;
  height: 40px;
  background: yellow;
  position: absolute;
  top: 0;
 }

我想使用 scrollTop 之类的东西或其中之一来让弹出窗口始终停留在用户的视角中,无论他们滚动到多低

$('a').on('click', function(e){
  var lightBox = $('<div class="lightbox-container"> <p>click to remove</p>');
  lightBox.appendTo('body');
  $('.lightbox-container').on('click', function(e){
    $(this).remove();
  });
});

这是我正在处理 http://jsfiddle.net/2RNAN/1/ 的 fiddle

我知道还有其他关于此的帖子,但我对 jquery 还很陌生,似乎无法让它工作。

最佳答案

这个工作 fiddle here

$('a').on('click', function (e) {
    e.preventDefault();
    var lightBox = $('<div class="lightbox-container"> <p>click to remove</p>');
    lightBox.appendTo('body');
    $('.lightbox-container').css('top', $(document).scrollTop() + 'px');
    $('.lightbox-container').on('click', function (e) {
        $(this).remove();
    });
});
$(document).on('scroll', function () {
    $('.lightbox-container').css('top', $(document).scrollTop() + 'px');
});

关于javascript - jQuery - 无论滚动多低,屏幕上都会出现弹出框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18642163/

相关文章:

javascript - JQuery 验证未在电子邮件字段中实现 'required'

javascript - 变量在函数内部改变它的值

javascript - react 处理事件

javascript - 在选择时突出显示 xy 轴上的相关表格单元格

jquery - 如何将 ajax 引入 jQuery UI 对话框?

javascript - jQuery .ajax() 正在破坏 TinyMCE 3.5.6

javascript - Fancybox 在同一页面上使用多个画廊

javascript - 在 JavaScript 和 vxml 中使用多个转接号码

javascript - 嵌套 ng-repeat $first 和 $last?

javascript - 递归方式层次树的构建逻辑