You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by sv...@apache.org on 2019/07/02 07:18:30 UTC
[wicket] 01/04: WICKET-6681 addEventListener on element instead of
document
This is an automated email from the ASF dual-hosted git repository.
svenmeier pushed a commit to branch feature/WICKET-6681-vanilla-wicket-ajax
in repository https://gitbox.apache.org/repos/asf/wicket.git
commit 9d87c4e2571c3feefb7859b598f42477e3af9296
Author: Sven Meier <sv...@apache.org>
AuthorDate: Mon Jul 1 12:26:29 2019 +0200
WICKET-6681 addEventListener on element instead of document
because "load" does fire on document only
---
.../org/apache/wicket/ajax/res/js/wicket-ajax-vanilla.js | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-vanilla.js b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-vanilla.js
index c25b74c..4396b0d 100644
--- a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-vanilla.js
+++ b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-vanilla.js
@@ -2463,30 +2463,31 @@
* the event is always triggered when it reaches the selected element.
*/
add: function (element, type, fn, data, selector) {
+ var el = element;
+ if (typeof(element) === 'string') {
+ el = Wicket.$(element);
+ }
+
if (type === 'domready') {
if (document.readyState !== 'loading') {
fn();
} else {
- document.addEventListener('DOMContentLoaded', fn);
+ el.addEventListener('DOMContentLoaded', fn);
}
} else if (type === 'load' && isWindow(element)) {
if (document.readyState !== 'loading') {
fn();
} else {
- document.addEventListener('load', fn);
+ el.addEventListener('load', fn);
}
} else {
- var el = element;
- if (typeof(element) === 'string') {
- el = Wicket.$(element);
- }
if (!el && Wicket.Log) {
Wicket.Log.error("Cannot bind a listener for event '%s' because the element is not in the DOM", type, element);
}
// FIXME: how to pass sub-selector and data to the native impl ?
- Wicket.$(el).addEventListener(type, fn, selector, data);
+ el.addEventListener(type, fn, selector, data);
}
return element;
},