collapse-whitespace

Remove unnecessary whitespace from an element.

MIT 14 个版本
安装
npm install collapse-whitespace
yarn add collapse-whitespace
pnpm add collapse-whitespace
bun add collapse-whitespace
README

collapse-whitespace

collapse-whitespace is a module for removing unnecessary whitespace from a DOM node.

Installation

Use npm:

$ npm install collapse-whitespace

Then, if you’re using browserify or something similar:

var collapse = require('collapse-whitespace')

Otherwise, just include the minified file, whitespace.min.js, somewhere on your page, and this module will make itself available as collapse:

<script src="./node_modules/collapse-whitespace/whitespace.min.js"></script>

Usage

var collapse = require('collapse-whitespace')
var div = document.createElement('div')

div.innerHTML = '   <p>Foo   bar</p>  <p>Words</p> '
collapse(div)

console.log(div.innerHTML)
// '<p>Foo bar</p><p>Words</p>'

For more examples of what collapse-whitespace does, check out the test page.

API

collapse-whitespace exposes a single function (called collapse if you're including this module via a script tag).

collapse(node [, isBlock [, isPre]])

Removes all extraneous whitespace from the given node. By default, collapse-whitespace relies on a theoretical list of block elements to determine which elements are block and which ones are inline. This list may be unsuitable for your needs; the optional parameter isBlock can be used to tweak this behaviour. isBlock should be a function that accepts a DOM node and returns a Boolean.

Note that collapse-whitespace also does not take into account the parent(s) of the given node:

<pre>
  <span class="test">
    Lots of whitespace around this text.
  </span>
</pre>

<script>
  collapse(document.querySelector('.test'))
</script>

<!-- Results in: -->
<pre>
  <span class="test">Lots of whitespace around this text.</span>
</pre>

By default only PRE nodes have whitespace preserved, but this can be customized via the optional isPre parameter. isPre should be a function that accepts a DOM node and returns a Boolean.

License

MIT

版本列表
1.1.7 2018-11-09
1.1.6 2017-04-03
1.1.5 2017-03-24
1.1.4 2016-11-27
1.1.3 2016-11-27
1.1.2 2015-07-11
1.1.1 2015-04-27
1.1.0 2015-03-13
1.0.5 2015-02-01
1.0.4 2014-11-09
1.0.3 2014-11-03
1.0.2 2014-11-02
1.0.1 2014-10-23
1.0.0 2014-10-21