java.lang.Object
org.wicketstuff.wiquery.core.javascript.JsScope
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
JsScopeEvent

public abstract class JsScope extends Object implements Serializable
$Id: JsScope.java 1714 2011-09-22 20:38:30Z hielke.hoeve $

JsScope are used to define anonymous JavaScript functions. For example, let's take the each statement:

        
 new JsQuery().$(".foo").each(new JsScope() {
 
        public void execute(JsScopeContext scopeContext) {
                scopeContext.self().chain("css", "border", "1px solid red");
        }
 
 });
 
 

You can either pass arguments to the JsScope (like in JavaScript functions) (see constructor args).

Since:
0.7
Author:
Lionel Armanet
See Also:
  • Constructor Details

    • JsScope

      public JsScope(String... scopeParameters)
      Constructs a new JsScope instance with the given args. This is the equivalent of the JavaScript statement: function(arg1, arg2, arg3) {
      Parameters:
      scopeParameters -
  • Method Details

    • quickScope

      public static JsScope quickScope(CharSequence javascriptCode)
      Creates a default JsScope to execute the given statement.
      Parameters:
      javascriptCode - the JavaScript statement to execute with the scope.
      Returns:
      the created JsScope.
    • quickScope

      public static JsScope quickScope(JsStatement jsStatement)
      Creates a default JsScope to execute the given statement.
      Parameters:
      jsStatement - the JavaScript statement to execute with the scope.
      Returns:
      the created JsScope.
    • execute

      protected abstract void execute(JsScopeContext scopeContext)
      Executes the JsScope.
      Parameters:
      scopeContext - the given scope.
    • render

      public CharSequence render()
      Renders the scope.