How Adobe Dreamweaver processes JavaScript in extensions

Adobe Dreamweaver checks the Configuration/extension_type folder during startup. If it encounters an extension file within the folder, Adobe Dreamweaver processes the JavaScript by completing the following steps:

  • Compiling everything between the beginning and ending SCRIPT tags
  • Executing any code within SCRIPT tags that is not part of a function declaration

    NOTE

    This procedure is necessary during startup because some extensions might require global variables to initialize.

Adobe Dreamweaver performs the following actions for any external JavaScript files that are specified in the SRC attributes of SCRIPT tags:

  • Reads in the file
  • Compiles the code
  • Executes the procedures

    NOTE

    If any JavaScript code in your extension file contains the string "</SCRIPT>", the JavaScript interpreter reads the string as an ending SCRIPT tag and reports an unterminated string literal error. To avoid this problem, break the string into pieces and concatenate them like this: "<' + '/SCRIPT>".

Adobe Dreamweaver executes code in the onLoad event handler (if one appears in the BODY tag) when the user selects the command or action from a menu for the Command and Behavior action extension types.

Adobe Dreamweaver executes code in the onLoad event handler on the BODY tag if the body of the document contains a form for object extensions.

Adobe Dreamweaver ignores the onLoad handler on the BODY tag in the following extensions:

  • Data translator
  • Property inspector
  • Floating panel

For all extensions, Adobe Dreamweaver executes code in other event handlers (for example, onBlur="alert('This is a required field.')") when the user interacts with the form fields to which they are attached.

Adobe Dreamweaver supports the use of event handlers within links. Event handlers in links must use syntax, as shown in the following example:

<a href="#" onMouseDown=alert('hi')>link text</a>

Plug-ins (set to play at all times) are supported in the BODY of extensions. The document.write() statement, Java applets, and ActiveX controls are not supported in extensions.