diff options
| author | Vojta Jina | 2012-04-27 17:31:11 +0200 | 
|---|---|---|
| committer | Vojta Jina | 2012-05-17 15:47:53 -0700 | 
| commit | 84542d2431d20de42d6ec27c9d3435dd72dbe2ee (patch) | |
| tree | 37480cebedfce535a2537d4ce4300d6989576bfa /src/ng/rootScope.js | |
| parent | 91db99208e197a73584a88a8d835eeb55c466335 (diff) | |
| download | angular.js-84542d2431d20de42d6ec27c9d3435dd72dbe2ee.tar.bz2 | |
feat(scope): add event.preventDefault() and event.defaultPrevented
Diffstat (limited to 'src/ng/rootScope.js')
| -rw-r--r-- | src/ng/rootScope.js | 18 | 
1 files changed, 15 insertions, 3 deletions
diff --git a/src/ng/rootScope.js b/src/ng/rootScope.js index 5bd65214..bb12362b 100644 --- a/src/ng/rootScope.js +++ b/src/ng/rootScope.js @@ -618,6 +618,8 @@ function $RootScopeProvider(){         *   - `name` - {string}: Name of the event.         *   - `stopPropagation` - {function=}: calling `stopPropagation` function will cancel further event propagation         *     (available only for events that were `$emit`-ed). +       *   - `preventDefault` - {function}: calling `preventDefault` sets `defaultPrevented` flag to true. +       *   - `defaultPrevented` - {boolean}: true if `preventDefault` was called.         */        $on: function(name, listener) {          var namedListeners = this.$$listeners[name]; @@ -662,7 +664,11 @@ function $RootScopeProvider(){              event = {                name: name,                targetScope: scope, -              stopPropagation: function() {stopPropagation = true;} +              stopPropagation: function() {stopPropagation = true;}, +              preventDefault: function() { +                event.defaultPrevented = true; +              }, +              defaultPrevented: false              },              listenerArgs = concat([event], arguments, 1),              i, length; @@ -712,8 +718,14 @@ function $RootScopeProvider(){          var target = this,              current = target,              next = target, -            event = { name: name, -                      targetScope: target }, +            event = { +              name: name, +              targetScope: target, +              preventDefault: function() { +                event.defaultPrevented = true; +              }, +              defaultPrevented: false +            },              listenerArgs = concat([event], arguments, 1);          //down while you can, then up and next sibling or up and next sibling until back at root  | 
