JSPM

  • Created
  • Published
  • Downloads 1125326
  • Score
    100M100P100Q185881F

Align DOM Node Flexibly

Package Exports

  • dom-align
  • dom-align/lib
  • dom-align/lib/utils

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (dom-align) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

dom-align


align source html element with target html element flexibly. port from kissyteam/component align

NPM version build status Test coverage gemnasium deps node version npm download Sauce Test Status

Sauce Test Status

Screenshot

Install

dom-align

Feature

  • support ie6+ chrome firefox
  • support align points and offset
  • support auto adjust according to visible area

Online Demo

Usage

var domAlign = require('dom-align');
// use domAlign
// sourceNode's initial style should be position:absolute;left:-9999px;top:-9999px;
domAlign(sourceNode, targetNode, {
  points: ['tl', 'tr'] // align top left point of sourceNode with top right point of targetNode
  offset: [10, 20] // the offset sourceNode by 10px in x and 20px in y
});

API

void domAlign(source: HTMLElement, target: HTMLElement, alignConfig: Object):Function

alignConfig object details

name type description
points String[2] move point of source node to align with point of target node, such as ['tr','cc'], align top right point of source node with center point of target node. point can be 't'(top), 'b'(bottom), 'c'(center), 'l'(left), 'r'(right)
offset Number[2] offset source node by offset[0] in x and offset[1] in y
overflow Object if adjustX field is true, then will adjust source node in x direction if source node is invisible. if adjustY field is true, then will adjust source node in y direction if source node is invisible.

Development

npm install
npm start

Example

http://localhost:8000/examples/index.md

Test Case

http://localhost:8000/tests/runner.html?coverage

Coverage

http://localhost:8000/node_modules/rc-server/node_modules/node-jscover/lib/front-end/jscoverage.html?w=http://localhost:8000/tests/runner.html?coverage

License

dom-align is released under the MIT license.