# Yahoo! UI Library

### dd 3.0.0b1

Yahoo! UI Library > dd > DD.Scroll
Search:
Filters Show Private Show Protected Show Deprecated

## Class DD.Scroll - extends Base

Known Subclasses:
  Plugin.DDWindowScroll Plugin.DDNodeScroll

This class is the base scroller class used to create the Plugin.DDNodeScroll and Plugin.DDWinScroll. This class should not be called on it's own, it's designed to be a plugin.

### Constructor

DD.Scroll `( )`

### Properties

#### _dimCache - `private Object`

Cache of the dragNode dims.

#### _scrolling - `private Boolean`

Tells if we are actively scrolling or not.

#### _scrollTimer - `private {Y.later}`

Holder for the Timer object returned from Y.later.

#### _vpRegionCache - `private Object`

Cache of the Viewport dims.

#### Properties inherited from Attribute:

``

#### Properties inherited from Base:

`name`

### Methods

#### _cancelScroll

`private void _cancelScroll ( )`
Cancel a currently running scroll timer.

Returns: `void`

#### _checkWinScroll

`private void _checkWinScroll ( move )`
Check to see if we need to fire the scroll timer. If scroll timer is running this will scroll the window.

Parameters:
  `move <Boolean>` Should we move the window. From Y.later

Returns: `void`

#### _getVPRegion

`private void _getVPRegion ( )`
Sets the _vpRegionCache property with an Object containing the dims from the viewport.

Returns: `void`

#### _initScroll

`private void _initScroll ( )`
Cancel a previous scroll timer and init a new one.

Returns: `void`

#### _setDimCache

`private void _setDimCache ( )`
Set the cache of the dragNode dims.

Returns: `void`

#### align

`void align ( )`
Called from the drag:align event to determine if we need to scroll.

Returns: `void`

#### end

`void end ( )`
Called from the drag:end event

Returns: `void`

#### start

`void start ( )`
Called from the drag:start event

Returns: `void`

#### toString

`toString ( )`
General toString method for logging

#### Methods inherited from EventTarget:

`_getType, _parseType, addTarget, after, before, bubble, detach, detachAll, fire, getEvent, on, publish, removeTarget, subscribe, unsubscribe, unsubscribeAll`

#### Methods inherited from Attribute:

`_addAttrs, _addLazyAttr, _defAttrChangeFn, _fireAttrChange, _getAttrInitVal, _isLazyAttr, _set, _setAttr, _setAttrVal, _splitAttrVals, addAttr, addAttrs, attrAdded, get, getAttrs, modifyAttr, removeAttr, reset, set, setAttrs`

#### Methods inherited from Plugin.Host:

`_destroyPlugins, _initPlugins, _plug, _unplug, hasPlugin, plug, unplug`

#### Methods inherited from Base:

`_aggregateAttrs, _defDestroyFn, _defInitFn, _destroyHierarchy, _filterAttrCfs, _getAttrCfgs, _getClasses, _initHierarchy, _initHierarchyData, destroy, init, toString`

### Events

#### bufferChange

`bufferChange ( event )`
Fires when the value for the configuration attribute 'buffer' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### horizontalChange

`horizontalChange ( event )`
Fires when the value for the configuration attribute 'horizontal' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### hostChange

`hostChange ( event )`
Fires when the value for the configuration attribute 'host' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### parentScrollChange

`parentScrollChange ( event )`
Fires when the value for the configuration attribute 'parentScroll' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### scrollDelayChange

`scrollDelayChange ( event )`
Fires when the value for the configuration attribute 'scrollDelay' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### verticalChange

`verticalChange ( event )`
Fires when the value for the configuration attribute 'vertical' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### windowScrollChange

`windowScrollChange ( event )`
Fires when the value for the configuration attribute 'windowScroll' is changed. You can listen for the event using the on method if you wish to be notified before the attribute's value has changed, or using the after method if you wish to be notified after the attribute's value has changed.

Parameters:
  `event <Event.Facade>` An Event Facade object with the following attribute specific properties added:
  prevVal
    The value of the attribute, prior to it being set
  newVal
    The value the attribute is to be set to
  attrName
    The name of the attribute being set
  subAttrName
    If setting a property within the attribute's value, the name of the sub-attribute property being set

#### Events inherited from Base:

`destroy, destroyedChange, init, initializedChange,`

### Configuration Attributes

#### buffer `- Number`

The number of pixels from the edge of the screen to turn on scrolling. Default: 30

#### horizontal `- Boolean`

Allow horizontal scrolling, default: true.

#### host `- Object`

The host we are plugged into.

#### parentScroll `- Node`

Internal config option to hold the node that we are scrolling. Should not be set by the developer.

#### scrollDelay `- Number`

The number of milliseconds delay to pass to the auto scroller. Default: 235

#### vertical `- Boolean`

Allow vertical scrolling, default: true.

#### windowScroll `- Boolean`

Turn on window scroll support, default: false

#### Configuration attributes inherited from Base:

`destroyed, initialized,`

Copyright © 2009 Yahoo! Inc. All rights reserved.