精华内容
下载资源
问答
  • Resizable Overscroll

    2020-12-26 10:47:28
    While the overscroll works great to click-and-drag through the timeline, I came across two issues that surround resizing div containing the timeline with the overscroll attached to it. 1. My web ...
  • Rotator in overscroll

    2020-12-25 20:51:30
    <div><p>Can we use rotator in overscroll??</p><p>该提问来源于开源项目:azoff/overscroll</p></div>
  • Disable overscroll plugin

    2020-12-09 09:00:52
    plugins: { overscroll: false }, </code></pre> <p>scrollbar events/plugins stop working, but there isn't error in console. <p>I have workaround, <pre><code> plugins={<!-- -->{ overscroll: { ...
  • overscroll-behavior

    2020-05-22 14:18:50
    overscroll-behavior overscroll-behavior CSS 属性是 overscroll-behavior-x 和 overscroll-behavior-y 属性的合并写法, 让你可以控制浏览器过度滚动时的表现——也就是滚动到边界。 默认情况下,当触及页面顶部...

    overscroll-behavior

    overscroll-behavior CSS 属性是 overscroll-behavior-xoverscroll-behavior-y 属性的合并写法, 让你可以控制浏览器过度滚动时的表现——也就是滚动到边界。

    默认情况下,当触及页面顶部或者底部时(或者是其他可滚动区域),移动端浏览器倾向于提供一种“触底”效果,甚至进行页面刷新。你可能也发现了,当对话框中含有可滚动内容时,一旦滚动至对话框的边界,对话框下方的页面内容也开始滚动了——这被称为“滚动链”。
    在某些情况下我们不想要这些表现,使用 overscroll-behavior 来去除不需要的滚动链。

    一句话就是让滚动时父元素滚动不触发

    属性值

    overscroll-behavior: [ contain | none | auto ]{1,2}
    
    1. auto
      默认效果
    2. contain
      设置这个值后,默认的滚动边界行为不变(“触底”效果或者刷新),但是临近的滚动区域不会被滚动链影响到,比如对话框后方的页面不会滚动。
    3. none
      临近滚动区域不受到滚动链影响,而且默认的滚动到边界的表现也被阻止

    兼容性

    目前Safari浏览器尚不支持,Chrome和Firefox浏览器均支持,IE浏览器则有近似效果属性-ms-scroll-chaining代替,不过需要window 8及其以上版本的系统:

    overscroll-behavior兼容性

    overscroll-behavior-x

    这个CSS属性用来控制当滚动到区域的水平边界时的浏览器行为。

    属性值和overscroll-behavior一样

    overscroll-behavior-x: contain | none | auto
    

    overscroll-behavior-y

    这个CSS属性用来控制当滚动到区域的垂直边界时的浏览器行为。

    属性值和overscroll-behavior一样

    overscroll-behavior-y: contain | none | auto
    
    展开全文
  • <div><p>The <a href="https://drafts.csswg.org/css-overscroll-behavior/">overscroll-behavior spec</a> does not explicilty mention how overscroll-behavior interacts with zooming. <p>Consider ;9021519">...
  • Chrome 19 Breaks Overscroll

    2020-12-28 23:22:55
    <div><p>All other browsers currently work, but chrome 19 doesn't seem to be working. No errors showing the debug console unfortunately. Drag just doesn'...azoff/overscroll</p></div>
  • d be great to have some kind of onOverScrolled(float) listener, which accurately calls the overscroll amount whenever it occurs. <p>I've currently hooked into translateView(), but this does not ...
  • Android Overscroll

    千次阅读 2015-01-05 16:37:09
    Overscroll(边界回弹)效果--android2.3新增的功能,也就是当滑动到边界的时候,如果再滑动,就会有一个边界就会有一个发光效果。 * Api介绍: * public void setOverScrollMode (int mode) * 为视图设置过滚动...
     
    
    Overscroll(边界回弹)效果--android2.3新增的功能,也就是当滑动到边界的时候,如果再滑动,就会有一个边界就会有一个发光效果。
    * Api介绍:
    * public void setOverScrollMode (int mode)
    * 为视图设置过滚动模式。有效的过滚动模式有 OVER_SCROLL_ALWAYS(默认值)、
    * OVER_SCROLL_IF_CONTENT_SCROLLS(视图内容大于容器时允许过滚动)、和OVER_SCROLL_NEVER.

    * 只有当视图可以滚动时,才可以设置视图的过滚动模式.

    关于OverScroll?

    请参考:http://blog.csdn.net/zouxueping/article/details/6832805

    默认的效果并不好,很多人都想去掉,这里介绍如何去除此效果?

    (Android中如何消除ScrollView滚动到顶部或底部时的边框?)

    如何去掉这个效果呢?以下有两种情况需要考虑

    一.如果不需要使用 overscroll的那种 回弹效果

    解决方案:只需要在布局的 xml中 添加android:fadingEdge="none"或者在代码中添加setOverScrollMode(OVER_SCROLL_NEVER);OVER_SCROLL_NEVER的含义是在任何情况下都不可以overscroll。

    注意:(未证实)在不同的版本上解决的方法是不同的,在2.3之前可以在listview的属性中通过设置android:fadingEdge="none"来解决问题,但是在2.3及以上这个是不行的,这里,可以通过代码来设置模式,禁止其阴影的出现,以免影响美观。

    参考:http://blog.csdn.net/nanlus/article/details/8170618

    参考:http://blog.csdn.net/sy_bz/article/details/7200332


    展开全文
  • Overscroll mode not working

    2021-01-08 14:06:41
    t understand how use overscroll mode? <p>XML: <pre><code> some layouts... <com.myp.dragsortlistview xmlns:android="http://schemas.android.com/apk/res/android" xmlns:dslv="...
  • OverScroll用法

    千次阅读 2014-07-28 21:57:13
    android2.3新增了overscroll功能,听名字就知道应该是bounce功能的翻版,但也许是出于专利方面的考虑,google的默认实现跟IOS有所不同,它只是在list拖到边界处时做了一个发光的动画,个人觉得体验比

    IOS上的bounce功能给人的感觉很爽,当一个可以滚动的区域被拖到边界时,它允许用户将内容拖过界,放手后再弹回来,以一种非常棒的方式提示了用户边界的存在,是IOS的一大特色。android2.3新增了overscroll功能,听名字就知道应该是bounce功能的翻版,但也许是出于专利方面的考虑,google的默认实现跟IOS有所不同,它只是在list拖到边界处时做了一个发光的动画,个人觉得体验比IOS差远了。而且这个黄色的发光在黑色背景下虽然效果不错,在其它背景下可就难说了,因此很多人想要关掉它。

    日前google上搜索“android overscroll”,对此效果的介绍很多,但关于其具体使用方式和实现,则很少涉及,偶有提及,也经常答非所问或似是而非,反而误导了别人。于是我查阅了android相关源码,并做了一些测试,在此讲讲我的理解。

    首先是overscroll功能本身,在最顶层的View类提供了支持,可通过setOverScrollMode函数控制其出现条件。但其实View中并没有实现overscroll功能,它仅仅提供了一个辅助函数overScrollBy,该函数根据overScrollMode和内容是否需要滚动控制最大滚动范围,最后将计算结果传给onOverScrolled实现具体的overscroll功能,但此函数在View类中是全空的。

    overscroll功能真正的实现分别在ScrollView、AbsListView、HorizontalScrollView和WebView中各有一份,代码基本一样。以ScrollView为例,它在处理笔点移动消息时调用overScrollBy来滚动视图,然后重载了overScrollBy函数来实现具体功能,其位置计算通过OverScroller类实现。OverScroller作为一个计算引擎,应该是一个独立的模块,具体滚动效果和范围都不可能通过它来设置,我觉得没有必要细看。但滚动位置最终是它给出的,那相关数据肯定要传递给它,回头看overScrollBy函数,它有两个控制overScroll出界范围的参数,几个实现里面都是取自ViewConfiguration.getScaledOverscrollDistance,而这个参数的值在我的源码中都是0,而且我没找到任何可以影响其结果的设置。

    真悲催,绕了半天,android的默认实现里面根本没有给出overscroll功能,它只是提供了实现机制,要想用起来还得应用程序自己显式重写相关控件,估计还有一层隐含的意思,法律风险自负。在我的系统中一试,果然一个像素都不能拉出界。但那个闪光是怎么回事呢?

    在处理笔点消息处,overScrollBy后面不远处有一段mEdgeGlowTop的操作代码,看名字就像,用它一搜,相关机制就全明白了。mEdgeGlowTop在setOverScrollMode函数时创建,它使用的图片都是系统中固有的,甚至不能通过theme改变。它的实现原理也很简单,仅仅是两张png图片的合成,通过透明度的变化制造闪光的效果。更无语的是它既不能被应用程序访问,也不受任何控制,要关闭它的唯一办法是setOverScrollMode(View.OVER_SCROLL_NEVER)。否则就重写onTouchEvent函数吧,想干啥都可以,只是得自己做。

    谈到overScroll,很多文章都提到了ListView的setOverscrollHeader和setOverscrollFooter,很多人想通过这个来控制那个闪光效果。这两玩意不但可以通过函数设置,也可以在xml中指定,相当方便。但最后很多人发现没有任何作用,百思不得其解。其实这两张图片是用来作为overScroll拖过界时的背景的,默认系统不能拖过界,自然永远都看不到,有些定制的系统中能拖出界几个像素,但也很难看清。

    展开全文
  • m working on https://github.com/mdn/sprints/issues/2635 and this PR adds the data for <code>overscroll-behavior-block</code> and <code>overscroll-behavior-inline</code>.</p> <p>This is implemented in ...
  • 前端项目-jquery-overscroll,overscroll是一个jquery插件和polyfill,用于MobileSafari的溢出滚动样式。它旨在与最新版本的jquery一起在桌面浏览器上使用。
  • <div><p>I have implement this project in my project. this is working in it. but gettng some issue with that. I have found Overscroll effect not smooth as IOS....EverythingMe/overscroll-decor</p></div>
  • title: OverScroll&&VelocityTracker 参考: 让控件如此丝滑Scroller和VelocityTracker的API讲解与实战——Android高级UI Android应用开发之自定义View触摸相关工具类全解 VelocityTracker简介 ...

    title: OverScroll&&VelocityTracker


    参考:

    OverScroll && VelocityTracker

    其实这两个类都是滑动的辅助工具类,其并不是内部主动调用滑动的,滑动需要自己进行scrollTo()或者scrollBy()的移动,其内部会有回调
    对应的x,y坐标,和滑动的距离,和当前的位置,然后我们根据其返回的应该滑动到的位置进行滑动处理

    OverScroll API

    • overScroll.fling(int startX, int startY, int velocityX, int velocityY,int minX, int maxX, int minY, int maxY, int overX, int overY)
      滑动fling时触发调用

        	startX:   	fling的起始X位标
        	startY:   	fling的起始Y位标
        	velocityX:  X轴的滑动速度
        	velocityY:	Y轴的滑动速度
        	minX	:	fling的最小的X坐标,也就是left的临界点:画布向左滑动,dexIndex的值是正的,向右滑动dexIndex的值是负的
        				所以如果你画布一进去就是从最右边开始绘制,也就是需要向右滑动查看其余的数据,那么这个值就是你总需要滑动的x的负数
        	maxX	:	fling的最大的X坐标,也就是right的临界点,如果你一开始就在最右边,也就是画布没移动的时候,最初位置的时候,那么max就是0
        	minY    :	同minX一样
        	maxY	:	同maxX一样
        	overX	:	就是滑动到X临界点后可以回弹的距离,也可以理解为缓冲区
        	overY	:	就是滑动到Y临界点后可以回弹的距离,也可以理解为缓冲区	
      

      picture

    • overScroll.springBack(int startX, int startY, int minX, int maxX, int minY, int maxY);
      结合fling()使用,是做一些回滚操作,也就是回滚到设置的正确临界点,一般是讲fling的overX的距离回滚到正确的临界点

        	startX:		回滚的起点X,一般是getScrollX()
        	startY:	回滚的起点Y,一般是getScrollY()
        	minX  :		这个就是正确的最小的临界点坐标X,
        	maxX  :		这个就是正确的最大的临界点坐标X	----》正常startX是大于maxX或者是小于minX,才会有回滚效果
        	minY  : 	同上
        	maxY  :		同上
      
    • overScroll.startScroll(int startX, int startY, int dx, int dy)
      移动多少位置

        	startX:		移动点当前坐标
        	dx	  :		移动的距离
      

    原生View方法

    前面也说了以上都是协助滑动的方法,并不能让View滑动,View滑动还需自己通过ScrollTo()或者scrollBy(),这种滑动需要计算好别越界处理。但是有一个方法是内部View原生
    计算好的封装方法:overScrollBy();

    • overScrollBy(int deltaX, int deltaY,int scrollX, int scrollY,int scrollRangeX, int scrollRangeY,int maxOverScrollX, int maxOverScrollY,boolean isTouchEvent)
      其内部就是执行的scrollBy,通过onOverScrolled()的回调函数,但是在执行之前其对临界点判断做了处理

      deltaX: 滑动的距离,这里需要注意,移动的是画布,所以,deltax为负数才是画布往右移动,通过onTouchEvent拿到的右移动手势dex是正的,所以需要取反一下
      scrollX: 当前已经移动了多少距离getScrollX();
      scrollRangeX: 可以滑动的总距离,这个可以根据你是否需要overScroll,来决定是正常临界点还是多一点,同上边的,如果是右边起步,那么该值就是负数,以下会有代码解读
      maxOverScrollX:这个值比较奇怪,看底部代码
      isTouchEvent:是否是事件拖动时调用,也就是是否是onMove是调用

      picture

    onOverScrolled(int scrollX, int scrollY,boolean clampedX, boolean clampedY)

    View的回调重写方法:overScrollBy()方法执行的内部回调函数,
    scrollX : 移动的距离、New X scroll value in pixels、、也就是最新的移动后的X轴上的距离  getScrollX()
    clampedX: x轴上的移动位置是否完成,也就是有没有到达上边overScrollBy()函数设置值的回调
    		
    		@Override
    		protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY) {
    			int oldScrollX = getScrollX();
    			int oldScrollY = getScrollY();
    			setScrollX(scrollX);
    			onScrollChanged(scrollX, scrollY, oldScrollX, oldScrollY);
    		
    		}	
    

    picture

    onScrollChanged(int l, int t, int oldl, int oldt);

    每次内部调用scrollTo()、scrollby()方法时都会执行该onScrollChanged()方法,内部函数会返回当前坐标和上一次坐标,从而view会判断是往哪个方向移动
    

    VelocityTracker

    • 介绍参考:

      VelocityTracker简介

        		ViewConfiguration viewConfiguration = ViewConfiguration.get(getContext());
        		scaledTouchSlop = viewConfiguration.getScaledTouchSlop();
        		scaledMaximumFlingVelocity = viewConfiguration.getScaledMaximumFlingVelocity();
        		scaledMinimumFlingVelocity = viewConfiguration.getScaledMinimumFlingVelocity();
        		velocityTracker = VelocityTracker.obtain();//创建方式
        		velocityTracker.addMovement(event);//事件手势传入
        		velocityTracker.computeCurrentVelocity(int units, float maxVelocity);//设置滑动的速度单位,units=1000,maxVelocity=scaledMaximumFlingVelocity表示1s内滑动的像素的最大值是scaledMaximumFlingVelocity
        		velocityTracker.getXVelocity();//获取x轴上的滑动速度
      

    computeScroll()

    		 /**
    		  * Called by a parent to request that a child update its values for mScrollX
    		  * and mScrollY if necessary. This will typically be done if the child is
    		  * animating a scroll using a {@link android.widget.Scroller Scroller}
    		  * object.
    		  */
    		  
    也就是通过对象Scroller或者是其子类OverScroller执行需要改变ScrollX\scrollY的操作时,会被调用,会被回调
    ,so,上边的startScroll()\fling()\springBack()等Api的真时调用滑动的方法都是在computerScroll()的回调函数中做的
    

    picture

    展开全文
  • <div><ul><li>Never trigger overscroll bounce when overscroll is disabled. This fixes a bug where rounding could cause a layer to enter overscroll even if CAN_OVERFLOW is false, and then get stuck....
  • Prevent overscroll y on body

    2021-01-09 05:31:58
    <div><p>Add overscroll-behavior-y: none to body <h2>Changes <p>overscroll is the behavior where if you scroll to the top of the page, your momentum can take you past the body, and show a big ol empty ...
  • <p><strong>Maximum horizontal drag distance with elastic overscroll that snaps back on release</strong></p> <p>This should probably be used in concert with openValue: <pre><code> <swiperow ...
  • CSS overscroll-behavior:

    2019-08-13 13:15:58
    overscroll-behavior :auto 默认,继承父类滚动样式 overscroll-behavior :contain 阻止滚动链接,不继承父类滚动样式,使用Android 炫光或 iOS 回弹效果。 overscroll-behavior :none 阻止滚动链接,不继承...
  • Android-Overscroll-Getting-Stuck 的解决方案 在 StackOverflow 上看到一篇关于运行 4.x 及更高版本的设备上的 Android Overscroll 问题的帖子。 所以发布: : 过度滚动参考: ://jasonfry.co.uk/blog/android-...
  • CSS overscroll-behavior

    2018-02-02 15:08:00
    overscroll-behavior新属性解决了在手机上弹出滚动的一些问题,具体内容查看网址:https://www.w3cplus.com/css/overscroll-behavior.html 转载于:https://www.cnblogs.com/yuanyanbk/p/8405270.html...
  • 目前尚兼容性不好 文章摘自:...overscroll-behaviorCSS 属性是overscroll-behavior-x和overscroll-behavior-y属性的合并写法, 让你可以控制浏览器过度滚动时的表现——也就是滚动到边...
  • <div><p>Hi, i tried Overscroll on galaxy device and it doesn't work. Have you a solution for this problem? Thank you for all answer and for sharing that great script <p>Davide</p><p>该提问来源于...
  • <ul><li>Fixed not to show an overscroll effect when a focus moves between paging control buttons right after a list reached to the edge.</li><li>Fixed not to show an overscroll effect when a focus ...
  • <div><p>Android has a default overscroll action of refreshing the page. Many appy sites either provide their own pull-to-refresh implementation, or want to explicitly disable it. While developers can ...
  • <p>From the embedder perspective, we want to be able to configure and change the overscroll behavior. <p>Maybe something like this: <pre><code>rust pub struct ViewOverscrollBehavior { top: ...
  • s no publicly supported way of accessing the current overscroll position when using the plugin e.g. <code>{x: -4, y: -2 }</code></p> <h2>Current Behavior <p>The information is only available via a ...
  • <p>Added overscroll effect for moonstone which makes a user notice the end of the list. <h3>Resolution <p>Supporting overscroll effects on wheeling and paging control buttons. For performance and ...
  • 此时需要在设置了overflow的元素上使用overscroll-behavior overscroll-behavior: contain; 使用后效果: 但overscroll-behavior也存在局限,只能在悬浮框存在滚动条时阻止底层页面滚动,当悬浮框内容较少,不...
  • <div><p>When use scroll (touch) down and ...<p>How can handle overscroll and show pull to refresh when user do it. <p>Thank you</p><p>该提问来源于开源项目:BoxFactura/pulltorefresh.js</p></div>

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 330
精华内容 132
关键字:

Overscroll