aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMisko Hevery2013-05-06 14:53:45 -0700
committerMisko Hevery2013-05-06 21:52:53 -0700
commit2c69a6735e8af5d1b9b73fd221274d374e8efdea (patch)
treecbd98482b47b4f3e09c231eaf9f4c8247b930a7b /src
parentc575a56fc5c6abcb8442398b53ddd7ea2433b785 (diff)
downloadangular.js-2c69a6735e8af5d1b9b73fd221274d374e8efdea.tar.bz2
fix($location): prevent navigation when event isDefaultPrevented
Diffstat (limited to 'src')
-rw-r--r--src/jqLite.js2
-rw-r--r--src/ng/location.js2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/jqLite.js b/src/jqLite.js
index 0abae3d7..958242cd 100644
--- a/src/jqLite.js
+++ b/src/jqLite.js
@@ -560,7 +560,7 @@ function createEventHandler(element, events) {
}
event.isDefaultPrevented = function() {
- return event.defaultPrevented;
+ return event.defaultPrevented || event.returnValue == false;
};
forEach(events[type || event.type], function(fn) {
diff --git a/src/ng/location.js b/src/ng/location.js
index 4c31d0ad..4efa019c 100644
--- a/src/ng/location.js
+++ b/src/ng/location.js
@@ -527,7 +527,7 @@ function $LocationProvider(){
var absHref = elm.prop('href');
var rewrittenUrl = $location.$$rewrite(absHref);
- if (absHref && !elm.attr('target') && rewrittenUrl) {
+ if (absHref && !elm.attr('target') && rewrittenUrl && !event.isDefaultPrevented()) {
event.preventDefault();
if (rewrittenUrl != $browser.url()) {
// update location manually