/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader() { boolean jqueryInHeader = false; boolean jqueryMigrateInHeader = false; final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName("script"); for (int i = 0; i < scriptList.getLength() && !(jqueryInHeader && jqueryMigrateInHeader); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); jqueryInHeader |= StringUtils.contains(scriptTag.getSrc(), JQueryResources.JQUERY_URL); jqueryMigrateInHeader |= StringUtils.contains(scriptTag.getSrc(), JQueryResources.JQUERY_MIGRATE_URL); } return jqueryInHeader && jqueryMigrateInHeader; } }
jsScript.setSrc(scriptname); } else { jsScript.setInnerHTML(scriptname); jsScript.setType(JsResources.SCRIPT_TYPE); jsScript.setOnload(event -> { JsResources.eventLisenerQueue.get(scriptname).forEach(action -> action.handleEvent(event)); JsResources.eventLisenerQueue.get(scriptname).clear();
/** * async load of resources. * * @param function function to call on load */ public static void whenReady(final EventListener function) { JQueryResources.eventLisenerQueue.add(function); if (JQueryResources.initializationStarted || JQueryResources.isInHeader()) { if (JQueryResources.isInitialized()) { JQueryResources.eventLisenerQueue .forEach(action -> action.handleEvent(JQueryResources.rememberEvent)); JQueryResources.eventLisenerQueue.clear(); } return; } JQueryResources.initializationStarted = true; final ScriptElement jqueryScript = Browser.getDocument().createScriptElement(); jqueryScript.setSrc(JQueryResources.JQUERY_URL); jqueryScript.setType(JsResources.SCRIPT_TYPE); Browser.getDocument().getHead().appendChild(jqueryScript); jqueryScript.setOnload(event -> { JQueryResources.eventLisenerQueue.forEach(action -> action.handleEvent(event)); JQueryResources.eventLisenerQueue.clear(); JQueryResources.rememberEvent = event; }); }
jqueryScript.setSrc(JQueryResources.JQUERY_URL); jqueryScript.setType(JsResources.SCRIPT_TYPE); jqueryScript.setOnload(event -> { final ScriptElement jqueryMigrateScript = Browser.getDocument().createScriptElement(); jqueryMigrateScript.setSrc(JQueryResources.JQUERY_MIGRATE_URL); jqueryMigrateScript.setType(JsResources.SCRIPT_TYPE); jqueryMigrateScript.setOnload(secondEvent -> { JQueryResources.eventLisenerQueue.forEach(action -> action.handleEvent(secondEvent)); JQueryResources.eventLisenerQueue.clear();
jsScript.setSrc(scriptname); } else { jsScript.setInnerHTML(scriptname); jsScript.setType(JsResources.SCRIPT_TYPE); jsScript.setOnload(event -> { JsResources.eventLisenerQueue.get(scriptname).forEach(action -> action.handleEvent(event)); JsResources.eventLisenerQueue.get(scriptname).clear();
/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader() { final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName("script"); for (int i = 0; i < scriptList.getLength(); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); if (StringUtils.contains(scriptTag.getSrc(), JQueryResources.JQUERY_URL)) { return true; } } return false; } }
/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader() { final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName("script"); for (int i = 0; i < scriptList.getLength(); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); if (StringUtils.contains(scriptTag.getSrc(), WebshimResources.POLIFILLER_URL)) { return true; } } return false; } }
/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader() { final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName("script"); for (int i = 0; i < scriptList.getLength(); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); if (StringUtils.contains(scriptTag.getSrc(), WebshimResources.POLIFILLER_URL)) { return true; } } return false; } }
/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader(final String scriptname) { final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName(JsResources.TAG_TYPE); for (int i = 0; i < scriptList.getLength(); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); if (StringUtils.contains(scriptTag.getSrc(), scriptname)) { return true; } } return false; } }
/** * check if script is already in the header. * * @return true if it exists */ public static boolean isInHeader(final String scriptname) { final NodeList scriptList = Browser.getDocument().getHead().getElementsByTagName(JsResources.TAG_TYPE); for (int i = 0; i < scriptList.getLength(); i++) { final ScriptElement scriptTag = (ScriptElement) scriptList.item(i); if (StringUtils.contains(scriptTag.getSrc(), scriptname)) { return true; } } return false; } }