精华内容
下载资源
问答
  • 本文通过实例代码给大家介绍了通过封装scroll.js 获取滚动条的值的相关知识,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
  • js获取滚动条的

    2012-02-23 14:31:41
    js获取滚动条的宽,兼容所有浏览器。 直接alert(getScrollerWidth)即可看到效果
  • 页面无法获取滚动条的高度,值为0 虽然网上有很多解决无法获取滚动条的高度,正常来说只需要做个兼容即可:document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop 这可以解决通常...

    页面无法获取滚动条的高度,值为0

    虽然网上有很多解决无法获取滚动条的高度,正常来说只需要做个兼容即可:document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop

    这可以解决通常遇到的情况,但是我遇到的情况是,个别浏览器(搜狗浏览器、微信浏览器、小米自带浏览器)仍然无法获取滚动条的高度,值为0。

    以搜狗浏览器为例,图1可以获取滚动条高度,图2获取一直为0
    这里写图片描述 图1
    这里写图片描述 图2

    区别在于图1是body的滚动条,图2是body内某元素的滚动条,此时某些浏览器无法识别出滚动条的高度,因此值为0。

    解决方法:不要设置body的overflow(包括overflow-x、overflow-y)


    展开全文
  • 获取滚动条的宽度

    2013-10-05 16:37:00
    做了一个全屏的轮播图,在设计师那发现问题,banner图片获取的宽度是浏览器的宽度,在浏览器不是全屏的情况下打开再放大浏览器,banner不能全屏显示。...所以重点在于获取滚动条的宽度,下面是一个获取滚动条...

      做了一个全屏的轮播图,在设计师那发现问题,banner图片获取的宽度是浏览器的宽度,在浏览器不是全屏的情况下打开再放大浏览器,banner不能全屏显示。

      问题其实很简单,把获取浏览器的宽度改为获取屏幕宽度就可以了,但浏览器的滚动条会占据一定的宽度,所以需要获取浏览器的滚动条宽度,然后减去这部分宽度,就是banner图需要的宽度。所以重点在于获取滚动条的宽度,下面是一个获取滚动条宽度的函数。

      获取滚动条宽度的函数

    1 function getScrollWidth() {
    2     var noScroll, scroll, oDiv = document.createElement("DIV");
    3     oDiv.style.cssText = "position:absolute; top:-9999px; width:100px; height:100px; overflow:hidden;";        
    4     noScroll = document.body.appendChild(oDiv).clientWidth;
    5     oDiv.style.overflowY = "scroll";
    6     scroll = oDiv.clientWidth;
    7     document.body.removeChild(oDiv);
    8     return noScroll-scroll;
    9 }

     

    转载于:https://www.cnblogs.com/cuixi/p/3352558.html

    展开全文
  • C#获取滚动条的相关信息

    千次阅读 2015-12-11 18:05:39
     本文主要是获取滚动条的一些信息,例如滚动条滑块的大小,滚动条按钮块的大小。根据这些信息,用户能够自己计算出滑块的任意偏移位置。当然了,微软为我们提供了一个AutoScrollPosition属性,能够方便的计算出滑块...

            C#很多控件都有滚动条属性,我们也可以自己手动添加滚动条到控件(具体的例子见MSDN)。

            本文主要是获取滚动条的一些信息,例如滚动条滑块的大小,滚动条按钮块的大小。根据这些信息,用户能够自己计算出滑块的任意偏移位置。当然了,微软为我们提供了一个AutoScrollPosition属性,能够方便的计算出滑块的位移。下面我们调用user32.dll里的API来获取滚动条信息。

    #region 获取滚动条的信息
            public const uint ObjidHscroll = 0xFFFFFFFA;  //水平滚动条
            public const uint ObjidVscroll = 0xFFFFFFFB;  //垂直滚动条
            [DllImport("user32.dll", SetLastError = true, EntryPoint = "GetScrollBarInfo")]
            private static extern int GetScrollBarInfo(IntPtr hWnd,
                uint idObject, ref Scrollbarinfo psbi);

          //滚动条的具体信息
            public struct Scrollbarinfo
            {
                public int cbSize;
                public Rect rcScrollBar;
                public int dxyLineButton;
                public int xyThumbTop;  //滑块信息(滑块的Top或Left坐标)
                public int xyThumbBottom; 滑块的Bottom或Right坐标
                public int reserved;
                [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
                public int[] rgstate;
            }


            public struct Rect
            {
                public int Left;
                public int Top;
                public int Right;
                public int Bottom;
            }
            #endregion


         定义好上面的信息好,我们只需要简单的调用GetScrollBarInfo()函数即可。具体如下:

                        var info = new Scrollbarinfo();
                        var info_v = new Scrollbarinfo();
                        info.cbSize = Marshal.SizeOf(info);
                        var res_h = GetScrollBarInfo(this.Handle, ObjidHscroll, ref info); //水平滚动条信息
                        var res_v = GetScrollBarInfo(this.Handle, ObjidVscroll, ref info_v); //垂直滚动条信息
                        int sc = info.xyThumbBottom - info.xyThumbTop;   //这个就是滑块的大小


         根据这些信息以及滑块的NewValue和OldValue计算出大概的偏移,这种做法主要是为了自己设置滚动条属性才采用的。如果要计算滚动条的偏移只需要记录上次的

    AutoScrollPosition和当前的AutoScrollPosition,然后做差即可得到准确的偏移。

        现在假设有这样的一种情况:用户在UserControl上用GDI+绘制很多图形(矩形,椭圆......),但是客户区域不够存放整个画布,此时为了能够浏览整个画布,此时我们可以添加滚动条,方法如下:

          this.AutoScroll = true; //自动滚动条属性

          this.AutoScrollMinSize = new Size(virtual_x, virtual_y); //设置虚拟区域的大小,可以理解为画布的大小

    然后在滑动滚动条时更新画布上的所有图形的Location,如:

    int offset_h = currentMovePosition.X - lastMovePosition.X;  //currentMovePosition表示当前AutoScrollPosition,lastMovePosition表示上次AutoScrollPosition

    得到水平滚动条的滑动距离

    UserControl.Location=new Point(UserControl.Location.X+offset_h,UserControl.Location.Y)   

    垂直方向同理可以计算出,这样整个画布都能预览处理,不会出现GDI+绘图重叠的现象。

     





    展开全文
  • Vue中获取滚动条的高度的方法

    万次阅读 2019-05-29 22:38:34
    mounted() {//可以在这里面直接进行滚动条的获取 window.addEventListener('scroll', this.handleScroll, true) } methods: { handleScroll() { //方法一 //var top = Math.floor(document.body.scrollTop || ...
    mounted() {//可以在这里面直接进行滚动条的获取
    window.addEventListener('scroll', this.handleScroll, true)
    
    }
    methods: {
    handleScroll() {
    //方法一
    //var top = Math.floor(document.body.scrollTop || document.documentElement.scrollTop || window.pageYOffset)
    //console.log(top)
    
    //方法二
    //如果获取不到高度可换成 
    this.nextTick(()=>{
    		var top = document.body.scrollTop || document.documentElement.scrollTop || window.pageYOffset)
    		console.log(top)
    	})
    }
    
    
    展开全文
  • 获取滚动条的高度

    2018-01-10 15:45:00
    javascript 获取滚动条高度+常用js页面宽度与高度 /* 取窗口滚动条高度*/function getScrollTop(){ var scrollTop=0; if(document.documentElement&&document.documentElement.scrollTop) { ...
  • QScrollArea有两个滚动条,以水平滚动条举例(假设其已经显示了) 先看看水平滚动条是如何定义自己的滚动范围的: intimageWidth;//图像宽度 intbarWidth=scrollArea->horizontalScrollBar()->width();//滚动条...
  • js获取滚动条的高度

    千次阅读 2018-09-10 14:09:45
    浏览器获取滚动条高度的方法 浏览器 API IE6/7/8 document.documentElement.scrollTop IE9及以上 window.pageYOffset 或者 document.documentElement.scrollTop Safari window.pageYOffset或者...
  • 获取滚动条的位置: HtmlDocument document = WB1.Document;int top = document.GetElementsByTagName("HTML")[0].ScrollTop;//滚动条垂直位置 指定滚动条滚动到指定位置 WB1.Document.Window.ScrollTo(0, 100);//...
  • $(document).scroll(function(){ //页面加载时,获取滚动条初始高度  var distance = $(document).scrollTop(); //获取滚动条初始高度的值 :0  console.log(distance); //打印滚动条不同高度的位置的值  if...
  • 获取滚动条的位置

    2016-02-25 21:17:00
    下面就开始scrollTop 用法讲解: ...当用于返回位置时: 该方法返回第一个匹配元素的滚动条的垂直位置。当用于设置位置时: 该方法设置所有匹配元素的滚动条的垂直位置。 scrollTop() 语法 返...
  • 获取滚动条的距离

    2017-11-15 15:01:00
    <script type="text/javascript"> $(document).ready(function() { $(window).scroll(function() { //$(document).scrollTop() 获取垂直滚动的距离 ...
  • 移动端获取滚动条:document.body.scrollTop pc端获取滚动条:document.documentElement.scrollTop 转载于:https://www.cnblogs.com/szl6/p/9930130.html
  • //设置窗口滚动条高度 function setScrollTop(top){ if(!isNaN(top))document.body.scrollTop = top; } //取窗口滚动条高度 function getScrollTop(){ var scrollTop=0; if(document.docume...
  • js 获取滚动条的高度

    2009-10-26 14:48:35
    //获取滚动条的高度 function getPageScroll(){ var yScroll; if (self.pageYOffset) { yScroll = self.pageYOffset; //xScroll = self.pageXOffset; } else if (document.documentElement && ...
  • js获取滚动条的位置

    2019-09-29 10:31:15
    页面具有 DTD,或者说指定了 DOCTYPE 时,使用 document.documentElement。 页面不具有 DTD,或者说没有指定了 DOCTYPE,时,使用 ...这个是兼容的方法: function ScollPostion() {//滚动条位置 var t, l, w, h; ...
  • <div><p>该提问来源于开源项目:tangdaohai/vue-happy-scroll</p></div>
  • window.onscroll = function() { //获取滚动条的值 var scrollPos; if (typeof window.pageYOffset != undefined)//window.pageYOffset是
  • 获取滚动条的宽高

    2016-05-28 17:13:35
    是对象可见的宽度,不包滚动条等边线,会随窗口的显示大小改变。  offsetWidth  是对象的可见宽度,包滚动条等边线,会随窗口的显示大小改变。  一个scrollWidth和clientWidth的例子:   
  • window.addEventListener("scroll",function(e){ var h =document.documentElement.scrollTop||document.body.scrollTop; console.log(h) if(h <...jq根据滚动条百分比不停地加载数据 $...
  • 获取滚动条的尺寸

    2011-11-25 11:39:00
    创建一个嵌套节点,让外层节点产生滚动条,然后用offsetWidth - clientWidth即可获得滚动条宽度。需要注意的是为了避免页面抖动,可以设置外层元素position:absolute和visibility:hidden 参考: function ...
  • js获取滚动条的宽度

    2015-10-29 16:56:00
    function getScrollWidth() { var noScroll, scroll, ...//思路就是设置一个div没有滚动条的,获取其宽度,然后再让其拥有滚动条,在获取宽度,取差值 转载于:https://www.cnblogs.com/zonglonglong/p/4921015.html
  • js如何获取滚动条的高度

    万次阅读 2013-01-25 16:37:27
    由于市面上浏览器的种类众多,但是浏览器没有一个...对应后者,可以通过window对象的pageYOffset属性来取到当前滚动条到页面顶部的高度。对于万恶的IE来说就比较麻烦一点,它依赖当前文档类型。文档类型分为Standards

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,142
精华内容 1,656
关键字:

获取滚动条的