Package com.google.gwt.core.client

## Class ScriptInjector

- java.lang.Object
- - com.google.gwt.core.client.ScriptInjector

-     public class ScriptInjector
      extends java.lang.Object

  Dynamically create a script tag and attach it to the DOM. Usage with script as local string:

         String scriptBody = "var foo = ...";
         ScriptInjector.fromString(scriptBody).inject();

  Usage with script loaded as URL:

         ScriptInjector.fromUrl("http://example.com/foo.js").setCallback(
           new Callback() {
              public void onFailure(Exception reason) {
                Window.alert("Script load failed.");
              }
              public void onSuccess(Void result) {
                Window.alert("Script load success.");
              }
           }).inject();

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `ScriptInjector.FromString` | Builder for directly injecting a script body into the DOM.
    `static class` | `ScriptInjector.FromUrl` | Build an injection call for adding a script by URL.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static JavaScriptObject` | `TOP_WINDOW` | Returns the top level window object.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ScriptInjector.FromString` | `fromString​(java.lang.String scriptBody)` | Build an injection call for directly setting the script text in the DOM.
    `static ScriptInjector.FromUrl` | `fromUrl​(java.lang.String scriptUrl)` | Build an injection call for adding a script by URL.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TOP_WINDOW

          public static final JavaScriptObject TOP_WINDOW

      Returns the top level window object. Use this to inject a script so that global variable references are available under `$wnd` in JSNI access.

      Note that if your GWT app is loaded from a different domain than the top window, you may not be able to add a script element to the top window.

  - ### Method Detail

    - #### fromString

          public static ScriptInjector.FromString fromString​(java.lang.String scriptBody)

      Build an injection call for directly setting the script text in the DOM.
      Parameters:
        `scriptBody` - the script text to be injected and immediately executed.

    - #### fromUrl

          public static ScriptInjector.FromUrl fromUrl​(java.lang.String scriptUrl)

      Build an injection call for adding a script by URL.
      Parameters:
        `scriptUrl` - URL of the JavaScript to be injected.