280 likes | 627 Views
Chapter 14 Events, Scripts and Interactivity. Key Points. Actions , usually implemented by scripts are executed in response to events , such as mouse clicks or key presses, thus providing enhanced interactivity .
E N D
Key Points • Actions, usually implemented by scripts are executed in response to events, such as mouse clicks or key presses, thus providing enhanced interactivity. • The standard for World Wide Web client-side scripting comprises the ECMAScript language, which interacts with elements of the Web page and browser via objects in the W3C Document Object Model (DOM). • Fourth generation Web browsers only provide partial and incompatible implementations of these standards. JavaScript and dynamic HTML are loosely used to refer to the available implementations.
Key Points • ECMAScript is object-based, and the DOM provides host objects that correspond to the document elements of a Web page, so that these can be created and changed dynamically by scripts. • Event handlers are associated with elements and events by event-related HTML attributes, such as onClick and onMouseOver. They are used to implement rollover buttons and to add animation to Web pages.
Key Points • Host objects corresponding to style elements and stylesheets allow scripts to alter the appearance of a page dynamically. • Behaviours are parameterized actions provided by an authoring system (e.g. Director, Dreamweaver or Flash) to implement a limited repertoire of actions without scripting.
Key Points • When a timeline is used to organize a multimedia production, actions can be associated with time-based events, such as the playback head entering a particular frame, and can control playback by causing a jump to a particular frame. • Xtras can be used to extend Director and embed custom C++ code in a Director movie. Applets can be used to embed executable content in Web pages.
Introduction • OS • Event-driven system • Double-clicks • Associate actions with events • A pre-defined set of actions (behaviors) to perform common tasks, such as opening a file • Scripting language • A small programming language with facilities for controlling user interface elements and multimedia objects.
Reasons for Using Actions • Reason for associating actions with events • To provide interactivity • Users can control the system’s behavior. • Users can direct the flow of information that they receive. • Events that occur at specific times • Allow time-based behavior and synchronization to be introduced into systems • Actions in timeline • Provide non-linearity
Scripting Fundamentals • C++, Java • Control structures, abstraction mechanisms, and built-in data types • Scripting languages • Some Control structures and a few basic types • May provides some abstraction mechanisms • Provides objects and data types that belong to some ‘existing system’ • Relational database system • Relations and tuples
Multimedia Scripting • Provide objects corresponding to the elements of a multimedia production • It is not adequate to provide a type for each medium- text, sound, video, and so on- the types of objects are available need to take account of the way in which media objects are combined within the production. • A scripting language for use with XML or HTML, objects must be provided that correspond to document elements and to elements of user interface such as windows. • Time-line based system, such as Flash • Objects= frames and various object elements that may apear inside them
Multimedia Scripting • Scripting language • Perform computations on the attributes of objects • Create new objects • Affecting their appearance and behavior • Triggered by event
WWW Client-side Scripting • Server-side • Enable an HTTP server to communicate with other resources, such as databases, and incorporate data obtained from them into its response. • Web pages dynamically form time-varying data • Client-side • Appearance and behavior of Web pages • Allowing code has been downloaded from Internet to rin on your system. • Scripts cannot • access any local resources such as files • make any network connections • Their interaction with server is limited to requesting new resources and posting information form HTML forms. • Secure but limited • Provide feedback to user
Scripting • First scripting: Netscape LiveScript • Change to JavaScript • Microsoft: Jscript • ECMA(European Computer Manufactures’ Association) • ECMAScript based on JavaScript and Jscript • Object-based • Objects= • elements in HTEM document and Styles • Components of browser interface • W3C’s Document Object Model (DOM)
ECMAScript Syntax • Untyped language • The same variable can hold a string at one time, a number at another and a boolean at another. • Unicode characters • Arrays, objects • Built-in objects: Math, Date, host objects
Objects • Creation and manipulation of objects • Not organized into hierarchical classes • Properties • Named data items • Methods • Functions • P. 455 • document.write: dynamically generated content • Fig. 14.2: Prompting for user , P.457 Property Object Data Function Event Handler Method
Event Handlers • Table 14.1 • P. 459, • onMouseOver=“in_image()”onMouseOut=“out_of_image()” • Updating src property • Improvement of animated GIFs • Using Script • Arrange for animation to be stared and stopped by a control • onMouseOver=“start-animation()”onMouseOut=“stop_animation()” • setTimeout (code, delay) • Execute code after a delay
Scripts and Stylesheets • Content appearance: stylesheets • Altering stylesheets • documet.all.intro.style.color=‘black’ • Docuemt.stylesheet[0].rules[1].style.color=‘fuchsia’ • stylesheet[0], first STYLE, starting at zero • Absolute Positioning
Text animation • SPAN= layer • Apply positioning style • Layer 1: (40,35), Layer 2: (540,300)visibility property= hidden • P. 466
Behavior • A set of parameterized actions • A suitable interface for attaching behavior to elements of production • Much of necessary for scripting is removed • Without having to acquire programming skills • Parameterized actions= behavior • ECMAScript behavior
Behaviors in PDF is fixed • Modern browser • Arbitrary behaviors can be written in scripting language • Macromedia Dreamweaver • Dreamweaver’s behaviors palette (Fig. 14.4) • Behavior groups • Display status message and popup message display • Check browser’s capabilities • Check Browser, Check Plugin • Control over browsers and page elements • Control shockwave or Flash, Control sound behaviors • Concerned with images and motion graphics • Swap Image, Preload Images
Show-Hide Layers • Change Property • Drag Layer • add basic drag and drop functionality
Timeline Scripting and Behavior • Scripting: interactivity and non-linearity • Flash • An action is attached to a key frame simply by selecting the key frame and appropriate menu command, choosing one of the available behavior, and entering values for its parameters • The action is trigged when playback reached the frame to which it is attached. • Button= special symbols • Four frames= up, over, down, hit area • Timeline behavior • Play, Stop, Go To
Flash • Timeline with selections, Fig. 14.5 • Levels, Fig. 14.6 • Tell Target • Sent an event from one object to other • Movie control
Dreamweaver • Offer timeline interface • Timeline= behavior channel, allows actions to be attached to any frame • Several layers can be controlled by the same timeline. • Several different timelines can be attached to the same page. • Hand-crafted scripting vs prefabricated behaviors
Dreamweaver only ships with a behavior that causes a timeline to go to a specific numbered frame, not to the next or previous one. • P. 478, movie control, up(), down() • Behavior + timelines + scripts= dynamic Web pages
Director • Director • Combination of scripts with a timeline • Provides behaviors that can be attached to frames or sprites to implement the same range of time-based actions and control as Flash. • Message Sprite behavior • like Tell Target in Flash • Control one sprite from another • Compose behaviors by combining actions • Scripting language: Lingo • English-like
Lingo • Categories • Score scripts • Same as behavior • Scripts of members • Movie scripts • Parent scripts, new
Beyond Scripting • Scripts • Lack features: such as file input and output • Director’s Xtras • Code modules in C or C++ • Form support for new media types to networking and database management • Four types • Transition Xtras: dissolves, wipes,… • Tool Xtras: new functions to authoring environment • Sprite Xtras: new classes to cast members • Scripting Xtras: new command to Lingo, such as fileio extra • Prescribe interface
Java Applets • Small program in Java • HTML: <OBJECT> • Formatted and positioned using CSS • Java VM • Interpreter • Security: may not read or write local files • Java 2D, Java 3D, Java Sound