querySelectorAll selector engine
querySelectorAll
selector engine with jQuery-like interface
$ npm install scan --save
var scan = require('scan')
scan('.example').find('a').not('[href^="#"]')
scan()
instances are array-like and inherit from scan.prototype
and Array.prototype
scan()
methods chain intuitively or are callable via scan.prototype[method].call(array)
scan(selector)
→ elements that match selectorscan(selector, node|nodes)
→ elements that match selector from node or any nodesscan(node|nodes)
→ nodes wrapped in scan
instancescan(query).find(selector)
→ descendants that match selectorscan(query).find(element|elements)
→ elements that descend from queryscan(stack).find(fn, scope?)
→ the first value to pass fn.call(scope, value, i, stack)
scan(query).filter(nodes, selector)
→ stack filtered by selectorscan(query).filter(fn)
→ stack filtered by fn.call(element, i)
scan(query).filter(element|elements)
→ stack filtered by one or more elementsscan(array).filter(values)
→ the intersection of 2 arraysscan(query).filter(selector)
→ nodes
filtered against selector
scan(query).not(fn)
→ stack filtered against fn.call(element, i)
scan(query).not(element|elements)
→ stack filtered against one or more elementsscan(array).not(values)
→ the difference of 2 arraysscan.find(selector, context?)
→ array of elements that match selectorscan.find(stack, fn, scope?)
→ the first value to pass fn.call(scope, value, i, stack)
scan.matches(element, selector)
→ true
if element matches selectorscan.contains(node, element)
→ true
if node contains elementscan.contains(stack, item, start=0)
→ true
if stack contains itemscan.contains(str, substr, start=0)
→ true
if str contains substrSelector queries use querySelectorAll
where available or else degrade to getElementsByTagName
.
'p'
work in IE5.5+ and all other browsers'*'
works in IE6+ and all other browsersContribute by making edits in /src
or reporting issues.
$ npm install
$ grunt test
MIT