diff options
Diffstat (limited to 'src/Angular.js')
| -rw-r--r-- | src/Angular.js | 25 | 
1 files changed, 24 insertions, 1 deletions
| diff --git a/src/Angular.js b/src/Angular.js index 0cdeab3f..df236e05 100644 --- a/src/Angular.js +++ b/src/Angular.js @@ -79,7 +79,8 @@      -assertArg,      -assertArgFn,      -assertNotHasOwnProperty, -    -getter +    -getter, +    -getBlockElements  */ @@ -1318,3 +1319,25 @@ function getter(obj, path, bindFnToScope) {    }    return obj;  } + +/** + * Return the siblings between `startNode` and `endNode`, inclusive + * @param {Object} object with `startNode` and `endNode` properties + * @returns jQlite object containing the elements + */ +function getBlockElements(block) { +  if (block.startNode === block.endNode) { +    return jqLite(block.startNode); +  } + +  var element = block.startNode; +  var elements = [element]; + +  do { +    element = element.nextSibling; +    if (!element) break; +    elements.push(element); +  } while (element !== block.endNode); + +  return jqLite(elements); +} | 
