Skip to content

Commit cd827e7

Browse files
committed
Fixing some Ajax calls not completing
obj["on" + event] was overwritten also when addEventListener was available. Now adding an event fallback when addEventListener is unavailable. The original event (when available) is first added to the list, and then one or more callbacks are added. Fixes #509 Signed-off-by: Luuk Bosma <[email protected]>
1 parent d326cd0 commit cd827e7

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

pace.js

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,25 @@
4949
cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame;
5050

5151
addEventListener = function(obj, event, callback) {
52-
return (typeof obj.addEventListener === "function" ? obj.addEventListener(event, callback, false) : void 0) || (obj["on" + event] = callback);
52+
if (typeof obj.addEventListener === "function") {
53+
return obj.addEventListener(event, callback, false);
54+
} else {
55+
return function() {
56+
if (typeof obj["on" + event] !== "function" || typeof obj["on" + event].eventListeners !== "object") {
57+
var eventListeners = new Events();
58+
if (typeof obj["on" + event] === "function") {
59+
eventListeners.on(event, obj["on" + event]);
60+
}
61+
obj["on" + event] = function(evt) {
62+
return eventListeners.trigger(event, evt);
63+
};
64+
obj["on" + event].eventListeners = eventListeners;
65+
} else {
66+
var eventListeners = obj["on" + event].eventListeners;
67+
}
68+
eventListeners.on(event, callback);
69+
}();
70+
}
5371
};
5472

5573
if (requestAnimationFrame == null) {

0 commit comments

Comments
 (0)