Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 以编程方式设置相对于页面顶部的模式位置_Jquery_Css_Angularjs_Modal Dialog_Position - Fatal编程技术网

Jquery 以编程方式设置相对于页面顶部的模式位置

Jquery 以编程方式设置相对于页面顶部的模式位置,jquery,css,angularjs,modal-dialog,position,Jquery,Css,Angularjs,Modal Dialog,Position,我有一个模态,我用它作为菜单下拉菜单。 为了使这项工作,我手动设置高度模式弹出的权利下方的菜单。 为此,我添加了确定数量的像素,并将css属性top附加到具有固定数量像素的模式。 我的问题是,它是从用户所在页面的顶部设置数字,而不是从页面的顶部设置数字。 这是一个AngularJS模式,但我使用jquery设置css属性,如果有一个带有jquery的css解决方案,它应该是一个适用的解决方案 下面是我如何设置从顶部开始的像素数: var el = angular.

我有一个模态,我用它作为菜单下拉菜单。 为了使这项工作,我手动设置高度模式弹出的权利下方的菜单。 为此,我添加了确定数量的像素,并将css属性top附加到具有固定数量像素的模式。 我的问题是,它是从用户所在页面的顶部设置数字,而不是从页面的顶部设置数字。 这是一个AngularJS模式,但我使用jquery设置css属性,如果有一个带有jquery的css解决方案,它应该是一个适用的解决方案

下面是我如何设置从顶部开始的像素数:

                var el = angular.element(element);
            var thumbnail = el["0"];
            var finalThumbnailContainer = thumbnail.parentElement;
            var inte = 0;
            while(inte != 3){
                finalThumbnailContainer = finalThumbnailContainer.parentElement;
                inte++;
            }
            var innerEl = angular.element(finalThumbnailContainer);
            var top = ModalServices.getHorizontalMenuHeight();
            //110
            innerEl.css('top', top);
我对layout/css不是特别在行,也不知道如何使用该模式从页面开始显示X像素,而不是用户当前在页面上的位置

我将非常感谢您的帮助

谢谢

以下是modal的html图像:

第一个图像是当滚动条位于页面顶部时出现的模式图像,第二个图像是当滚动条稍微向下移动页面时出现的模式图像


当滚动条位于顶部时,我从与顶部的静态距离中减去$window.scrollTop,找到了一个解决方案

  var el = angular.element(element);
            var thumbnail = el["0"];
            var finalThumbnailContainer = thumbnail.parentElement;
            var inte = 0;
            while(inte != 3){
                finalThumbnailContainer = finalThumbnailContainer.parentElement;
                inte++;
            }
            var innerEl = angular.element(finalThumbnailContainer);
            var top = ModalServices.getHorizontalMenuHeight();
            var scrollTop = $(window).scrollTop();
             top = top - scrollTop;
            innerEl.css('top', top);
现在,无论滚动条设置在何处,模式都会下降到菜单正下方的正确位置……瞧