e-Ways easy-to-read computer text books for training and self-tuition
e-Ways logo
e-Ways Pty Limited, Lindfield West/Sydney
Australian Business Number: 94 086 732 121
Member of Scandinavian Business Association
Google

I have an attractive offer for you I have an attractive
offer for you:

Apparel books

Management books

Self Help books

Computer books:

  • Overview of Titles

  • Windows® XP

  • Windows® 2000

  • Windows® 95/95

  • Word (Styles & Templates)

  • Word '97

  • Word 2000

  • Excel 2000

  • Access

  • PowerPoint 2000

  • Internet

  • Surfing the Internet

  • Outlook Express

  • Web Pages

  • Web Pages XHTML

  • JavaScript

  • Tutor's Guides

    Where to buy

    On-Line order form (Credit Card)

    Mail Order form

    Useful Links

    Contact us

    Home

  • Get Going with JavaScriptGet Going with JavaScript

      Buy this book now

      Buy this book now

    • Author: Martin Baier
    • Ref: eW-1 876638 17 6
    • AU$12.99
    • 64 pages plus cover

    • The e-Ways text book Get Going with JavaScript has been endorsed by the Board of Studies and accredited from 1/1-2007 to 31/12-2011 for the following IT Certificates: ICA10105 & ICA20105

    • Get Going with JavaScript introduces the reader to the many opportunities that are offered by the JavaScript programming language.

    • In the opinion of the publisher the JavaScript programming language is perhaps the easiest and best tool for creating truly attractive and interactive web pages on the internet.

    • This text book on the JavaScript programming language is particularly suitable for beginners as it is written in a clear and easy-to-read format with lots of exercises. The e-Ways text book on the JavaScript programming language is well illustrated and features a step-by-step approach as it takes the reader through the elements of Event Handler, Functions, Variables, Mathematical Operations, Repeated Performances, Conditional Operations, Standard Objects, Calculator, Strings, User-Defined Objects etc.

    • The JavaScript programming language is platform independent and can be used on almost any PC or Mac computer.

    • Please click here for a view of the Table of Contents of this e-Ways text book on the JavaScript programming language.

    • e-Ways text books are readily available through a large number of Australian retail outlets.

    • In the event that you can't get to a store near you, we offer a mail order service.


      e-Ways Pty Ltd        PO Box 3033        Moore Avenue         Lindfield West        NSW 2070        Australia
      ABN: 94 086 732 121
      Ph: +61 (02) 9499 5676        Fx: +61 (02) 9498 6317        click for eMail        Web: www.e-Ways.com.au

    Table of Contents, The Basics, The Nesessary Software, HTML, What are HTML Pages? Brief HTML Reference Guide, HTML and JavaScript, Incorporation in the Header, Carrying out Code Given Particular Actions, Incorporation in the Body, First JavaScript Programming, Hello World, Hello World without Parameters, Hello World with Parameters, What Time is it? Page Reference, Event Handler, onLoad, onUnload, onMouseOver, onMouseOut, onFocus, onBlur, onChange, onClick, JavaScript, onSubmit, Functions, Variables, Local Variables, Global Variables, Mathematical Operations, Repeated Performance, Looping with for, Looping with while, Conditional Operations, Standard Objects, Document, Colours in Document, Document Properties, Pictures in a Document, Document frames, Document forms, Text Entry Fields, Radio and Check buttons, Drop-Down Lists, Pizza Service, Euro Calculator, Strings, The String Object, Length, Substring, toLowerCase, toUpperCase, Moving Text, User-Defined Objects, Arrays, Working with Frames, Quiz, The Explorer, The Project, The Practice, The Main Page, The Content Page, The Explorer Page, Customization, Reserved Words, The Last Word. Board Endorsed December 2006 Version 4 156 Information Technology A/T/V Course Type 2 Multimedia units Accredited from 1/1/2007 – 31/12/2011 Supporting Qualifications ICA10105 Certificate I in Information Technology ICA20105 Certificate II in Information Technology Board Endorsed December 2006 Version 4 157 Contents Contents........................................................................................................................ 157 ITM: Website Design A/T/V Value 1.0........................................................................ 158 ITM: Introduction to Website Design A/T/V Value 0.5................................................... 166 ITM: Advanced Website Design A/T/V Value 0.5 ........................................................ 172 ITM: Advanced Web Scripting A/T/V Value 0.5........................................................... 177 ITM Dynamic Web & Multimedia Integration A/T/V Value 1.0 ...................................... 184 ITM Web & Multimedia Integration A/T/V Value 0.5................................................... 191 ITM: Dynamic Website Construction A/T/V Value 0.5................................................... 196 ITM: Digital Editing and 2D Animation A/T/V Value 1.0.............................................. 201 ITM: Digital Image, Sound and Video Editing A/T/V Value 0.5 ..................................... 209 ITM: 2D Animation A/T/V Value 0.5 ......................................................................... 215 ITM: Dynamic Websites & 2D Animation A/T/V Value 1.0 ........................................... 221 ITM: 3D Graphics & 3DAnimation T/V Value 1.0......................................................... 228 ITM: 3D Graphics and Modelling T/V Value 0.5 .......................................................... 233 ITM: 3D Animation T/V Value 0.5 ............................................................................ 237 See Appendix document for additional whole units. ..................................................... 241 Board Endorsed December 2006 Version 4 158 ITM: Website Design A/T/V Value 1.0 (This unit combines Introduction to Website Design, 0.5 and Advanced Website Design, 0.5) Prerequisite None Specific Unit Goals This A unit should enable students to: This T unit should enable students to: work effectively in an Information Technology environment and apply OH&S procedures work effectively in an Information Technology environment and apply OH&S procedures use basic HTML scripting to create a simple website use HTML scripting to create a simple website, inline frames and interactive forms use basic tables in website design use complex tables in website design use a web authoring application for website design and incorporate basic JavaScript functions use a web authoring application for website design use cascading style sheets to apply uniform formatting across a website use basic cascading style sheets to facilitate consistent layout of web sites incorporate existing JavaScript functions into websites understand effective website principles and WWW3 accessibility standards understand effective website principles and WWW3 accessibility standards understand the principles underlining the Internet and WWW understand the principles underlining the Internet and WWW optimise images for inclusion in websites optimise images for inclusion in websites plan and design an efficient web site plan and design an efficient web site upload website files to an external server upload website files to an external server use JavaScript for validation of forms and to add interactive elements to web sites create images and navigation elements for websites using a graphics authoring application create images and navigation elements for websites using a graphics authoring application use a web authoring application to incorporate cascading style sheets to facilitate consistent layout of web sites use a web authoring application to produce advanced cascading style sheets to facilitate consistent layout of web sites use a advanced features of a web authoring application for website design such as layers and slicing work as a team to design and produce a web site work as a team to design and produce a web site design and create a website that complies design and create a website that complies Board Endorsed December 2006 Version 4 159 with W3C standards with W3C standards upload a website to a server using FTP program or similar upload a website to a server using FTP program or similar Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core ICA20105 ICAD2006B Operate computing packages Core ICA20105 ICAW2001B Work effectively in an IT environment Core ICA20105 ICAU1128B Operate a personal computer Core ICA20105 ICPMM263B Access and use the Internet Elective ICA20105 ICPMM321B Capture a digital image Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course History of the WWW and Internet How the WWW and Internet works Terminology associated with the WWW and Internet Role and function on the W3C (World Wide Web Consortium) in technological advancements History of the WWW and Internet How the WWW and Internet works Terminology associated with the WWW and Internet Role and function on the W3C (World Wide Web Consortium) in technological advancements Using HTML to create a website o Structure tags o Meta tags o Formatting tags o Image tags o Hyperlink tags o Table tags to display data Using HTML to create a website o Structure tags o Meta tags o Formatting tags o Image tags o Hyperlink tags o Table tags to display data o Table tags to aid page layout Using web authoring software to create a Using web authoring software to create a Board Endorsed December 2006 Version 4 160 website o Text and page formatting o Adding meta data o Inserting images o Use tables to display data o Use tables in page layout o Use of frames website o Text and page formatting o Adding meta data o Inserting images o Use tables to display data o Use tables in page layout o Use of frames Incorporating JavaScript functions into a website o Inline scripts o Links to external page scripts o Events o Function calls o Functions Understand and test a site against W3C accessibility standards Understand and test a site against W3C accessibility standards Use of graphic files in websites o Compatible file types o File size and effect on download times Use a graphics software to optimise images o Cropping o Resizing o Changing resolution Use of graphic files in websites o Compatible file types o File size and effect on download times Use a graphics software to optimise images o Cropping o Resizing o Changing resolution Web site design principles o Purpose and audience requirements o Page layout (alignment, proximity, use of white space) o Use of contrast and repetition o Use of images o Content o Navigation Web site design principles o Purpose and audience requirements o Page layout (alignment, proximity, use of white space) o Use of contrast and repetition o Use of images o Content o Navigation Board Endorsed December 2006 Version 4 161 o Accessibility o Proof reading o Download times Use of web page design tools o Storyboard o Navigation map o Accessibility o Proof reading o Download times Use of web page design tools o Storyboard o Navigation map Transfer a website to an external server using file upload Transfer a website to an external server using file upload Using HTML in website construction o Image maps o Form tags (textboxes, text areas, radio buttons, menus, submit buttons, set buttons) o Sending form data via email Using web authoring software to create a website that uses o Image maps o Email forms o Layers in page layout o Image splicing Using web authoring software to create a website that uses o Image maps o Email forms o Layers in page layout o Image splicing Design and construction a website that applies W3C accessibility standards Design and construction a website that applies W3C accessibility standards Use a graphics authoring package to create images for websites o Banners o Navigation elements o Icon and logos o Images for image maps Use a graphics authoring package to create images for websites o Banners o Navigation elements o Icon and logos o Images for image maps Design and construct a website in a team that meets given criteria o Target audience o Function and purpose o Content o Download capabilities Design and construct a website in a team that meets criteria given in a design brief o Target audience o Function and purpose o Content o Download capabilities Function and purpose of File Transfer Protocols Upload a website to an external server using a File Transfer Protocol Function and purpose of File Transfer Protocols Upload a website to an external server using a File Transfer Protocol Board Endorsed December 2006 Version 4 162 Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30- 80% 20-70 % Board Endorsed December 2006 Version 4 163 Board Endorsed December 2006 Version 4 164 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??????? Enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens confident and capable users of technologies ??????? Independent and self-managing learners ??? collaborative team members ??????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Baier, Martin. Get going with JavaScript Brown, Mark; Honeycutt, Jerry. Using HTML 4 Lehnert, Wendy. The Web Wizard’s Guide to HTML Oliver, Dick. SAMS teach yourself HTML 4 in 24 hours Board Endorsed December 2006 Version 4 165 Oliver, Dick; Holzshlag, Molly. Teach Yourself HTML 4 in 24 hours Parsons, Andrew. How to use CSS & DHTML Shelly, Gary; Cashman, Thomas; Quasney, Jeffrey; D. JavaScript: complete concepts and techniques. Shelley John. XHTML and CSS explained Webb, Joseph. XHTML Complete Williams R. and Tollet, J., The Non Designers Web Book, Peachpit Press, California. Websites http://www.pagetutor.com/pagetutor/makapage/index.html http://www.lissaexplains.com/ http://webmonkey.com/ http://www.fbe.unsw.edu.au/Learning/HTML/%20%20 http://www.w3schools.com/ http://www.w3c.org/ http://www.htmlgoodies.com/ http://www.scsite.com/js/qr.cfm http://webdeveloper.earthweb.com/webjs/jsmulti/ http://wps.aw.com/aw_webwizard/0,6065,60015-,00.html http://surf.de.uu.net/bookland/soft/koch/js/scriptno.htm http://www.webdevelopersnotes.com/tutorials/javascript/index.php3 http://wps.aw.com/aw_webwizard/0,6065,184741-,00.html These were accurate at the time of publication. Board Endorsed December 2006 Version 4 166 ITM: Introduction to Website Design A/T/V Value 0.5 Prerequisite %il Specific Unit Goals This A unit should enable students to: This T unit should enable students to: work effectively in an Information Technology environment and apply OH&S procedures work effectively in an Information Technology environment and apply OH&S procedures use basic HTML scripting to create a simple website use HTML scripting to create a simple website use basic tables in website design use complex tables in website design use a web authoring application for website design use a web authoring application for website design use cascading style sheets to apply uniform formatting across a website use basic cascading style sheets to facilitate consistent layout of web sites incorporate existing JavaScript functions into websites understand effective website principles and WWW3 accessibility standards understand effective website principles and WWW3 accessibility standards understand the principles underlining the Internet and WWW understand the principles underlining the Internet and WWW optimise images for inclusion in websites optimise images for inclusion in websites plan and design an efficient web site plan and design an efficient web site upload website files to an external server upload website files to an external server Board Endorsed December 2006 Version 4 167 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core ICA20105 ICAD2015B Operate computing packages Core ICA20105 ICAW2001B Work effectively in an IT environment Core ICA20105 ICPMM263B Access and use the internet Elective ICA20105 ICPMM321B Capture a digital image Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course History of the WWW and Internet How the WWW and Internet works Terminology associated with the WWW and Internet Role and function on the W3C (World Wide Web Consortium) in technological advancements History of the WWW and Internet How the WWW and Internet works Terminology associated with the WWW and Internet Role and function on the W3C (World Wide Web Consortium) in technological advancements Using HTML to create a website o Structure tags o Meta tags o Formatting tags o Image tags o Hyperlink tags o Table tags to display data Using HTML to create a website o Structure tags o Meta tags o Formatting tags o Image tags o Hyperlink tags o Table tags to display data o Table tags to aid page layout Using web authoring software to create a website o Text and page formatting o Adding meta data o Inserting images o Use tables to display data o Use tables in page layout Using web authoring software to create a website o Text and page formatting o Adding meta data o Inserting images o Use tables to display data o Use tables in page layout Formatted Formatted Board Endorsed December 2006 Version 4 168 Incorporating JavaScript functions into a website o Inline scripts o Links to external page scripts o Events o Function calls o Functions Understand and test a site against W3C accessibility standards Understand and test a site against W3C accessibility standards Use of graphic files in websites o Compatible file types o File size and effect on download times Use a graphics software to optimise images o Cropping o Resizing o Changing resolution Use of graphic files in websites o Compatible file types o File size and effect on download times Use a graphics software to optimise images o Cropping o Resizing o Changing resolution Web site design principles o Purpose and audience requirements o Page layout (alignment, proximity, use of white space) o Use of contrast and repetition o Use of images o Content o Navigation o Accessibility o Proof reading o Download times Use of web page design tools o Storyboard o Navigation map Web site design principles o Purpose and audience requirements o Page layout (alignment, proximity, use of white space) o Use of contrast and repetition o Use of images o Content o Navigation o Accessibility o Proof reading o Download times Use of web page design tools o Storyboard o Navigation map Transfer a website to an external server using file upload Transfer a website to an external server using file upload Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Board Endorsed December 2006 Version 4 169 Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% Board Endorsed December 2006 Version 4 170 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??????? Enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens confident and capable users of technologies ??????? Independent and self-managing learners ??? collaborative team members ??? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Brown, Mark; Honeycutt, Jerry. Using HTML 4 Lehnert, Wendy. The Web Wizard’s Guide to HTML Oliver, Dick. SAMS teach yourself HTML 4 in 24 hours Oliver, Dick; Holzshlag, Molly. Teach Yourself HTML 4 in 24 hours Board Endorsed December 2006 Version 4 171 Webb, Joseph. XHTML Complete Williams R. and Tollet, J., The Non Designers Web Book, Peachpit Press, California. Websites http://www.pagetutor.com/pagetutor/makapage/index.html http://www.lissaexplains.com/ http://webmonkey.com/ http://www.fbe.unsw.edu.au/Learning/HTML/%20%20 http://www.w3schools.com/ http://www.w3c.org/ http://www.htmlgoodies.com/ These were accurate at the time of publication. Board Endorsed December 2006 Version 4 172 ITM: Advanced Website Design A/T/V Value 0.5 Prerequisite %il. Specific Unit Goals This A unit should enable students to: This T unit should enable students to: work effectively in an Information Technology environment and apply OH&S procedures work effectively in an Information Technology environment and apply OH&S procedures use a web authoring application to create interactive forms use HTML scripting to create inline frames and interactive forms use a web authoring application incorporate basic JavaScript functions use JavaScript for validation of forms and to add interactive elements to web sites create images and navigation elements for websites using a graphics authoring application create images and navigation elements for websites using a graphics authoring application use a web authoring application to incorporate cascading style sheets to facilitate consistent layout of web sites use a web authoring application to produce advanced cascading style sheets to facilitate consistent layout of web sites use a advanced features of a web authoring application for website design such as layers and slicing work as a team to design and produce a web site work as a team to design and produce a web site design and create a website that complies with W3C standards design and create a website that complies with W3C standards upload a website to a server using FTP program or similar upload a website to a server using FTP program or similar Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU1128B Operate a personal computer Core ICA20105 ICAU2013B Integrate commercial computing packages Core ICA20105 ICAW2001B Work effectively in an IT environment Core ICA20105 ICPMM263B Access and use the internet Elective Formatted Board Endorsed December 2006 Version 4 173 Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course Using HTML in website construction o Image maps o Form tags (textboxes, text areas, radio buttons, menus, submit buttons, set buttons) o Sending form data via email Using web authoring software to create a website that uses o Image maps o Email forms o Layers in page layout o Image splicing Using web authoring software to create a website that uses o Image maps o Email forms o Layers in page layout o Image splicing Design and construction a website that applies W3C accessibility standards Design and construction a website that applies W3C accessibility standards Use a graphics authoring package to create images for websites o Banners o Navigation elements o Icon and logos o Images for image maps Use a graphics authoring package to create images for websites o Banners o Navigation elements o Icon and logos o Images for image maps Design and construct a website in a team that meets given criteria o Target audience o Function and purpose o Content o Download capabilities Design and construct a website in a team that meets criteria given in a design brief o Target audience o Function and purpose o Content o Download capabilities Function and purpose of File Transfer Protocols Upload a website to an external server using a File Transfer Protocol Function and purpose of File Transfer Protocols Upload a website to an external server using a File Transfer Protocol Formatted Board Endorsed December 2006 Version 4 174 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30- 80 % 20-70 % Board Endorsed December 2006 Version 4 175 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students should complete a major task of designing, constructing, and uploading a website based on a design brief. The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Board Endorsed December 2006 Version 4 176 Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??????? Enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens confident and capable users of technologies ??????? Independent and self-managing learners ??? collaborative team members ??????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Baier, Martin. Get going with JavaScript Parsons, Andrew. How to use CSS & DHTML Shelly, Gary; Cashman, Thomas; Quasney, Jeffrey; D. JavaScript: complete concepts and techniques Shelley John. XHTML and CSS explained Websites http://www.scsite.com/js/qr.cfm http://webdeveloper.earthweb.com/webjs/jsmulti/ http://wps.aw.com/aw_webwizard/0,6065,60015-,00.html http://surf.de.uu.net/bookland/soft/koch/js/scriptno.htm http://www.webdevelopersnotes.com/tutorials/javascript/index.php3 http://wps.aw.com/aw_webwizard/0,6065,184741-,00.html http://www.w3schools.com/css/css_examples.asp http://www.w3.org/ Board Endorsed December 2006 Version 4 177 ITM: Advanced Web Scripting A/T/V Value 0.5 Prerequisites “The content of this unit builds on the Java Scripting introduced in either Introduction to Website Design (0.5) or Advanced Website Design (0.5) and would lead into Dynamic Website Construction (0.5). The scripting languages, PHP, ASP and JSP should not be taught in this unit.” Specific Unit Goals This A unit should enable students to: This T unit should enable students to: Use appropriate hardware and software to produce dynamic, interactive web sites. Use appropriate hardware and software to produce dynamic, interactive web sites. Use scripting languages to add advanced dynamic elements to web sites. Use scripting languages to add advanced dynamic elements to web sites. Work as a team to design and produce a web site. Work as a team to design and produce a web site. Communicate effectively about advanced scripting aspects of web sites. Communicate effectively about advanced scripting aspects of web sites. Work efficiently in an Information Technology environment and apply OH&S procedures. Work efficiently in an Information Technology environment and apply OH&S procedures. Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU1128B Operate a personal computer Core ICA20105 ICAU2013B Integrate commercial computing packages Core ICA20105 ICAW2001B Work effectively in an IT environment Core ICA20105 ICPMM263B Access and use the Internet Elective Content This unit is sequenced to fit inbetween the “Advanced Website Design” and the “Dynamic Website Construction” ½-units. The content of this unit builds on the JavaScripting that was covered superficially in the “Advanced Website Design” ½-unit. Specifically prohibited from this unit are the languages PHP, ASP & JSP. These are reserved for the ½-unit “Dynamic Website Construction” which will be taught following this one. Also Formatted Formatted Board Endorsed December 2006 Version 4 178 prohibited is the topic of web databases as this is also covered in the “Dynamic Website Construction” ½-unit. In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course ??Further web design topics – build on ideas introduced in previous web units ??Further web design topics – build on ideas introduced in previous web units ??The range of scripting languages available (e.g. JavaScript, VBScript, Perl, CGI, XHTML, XML & VML) ??The range of scripting languages available (e.g. JavaScript, VBScript, Perl, CGI, XHTML, XML & VML) ??Browser limitations & incompatibilities with scripting languages ??Browser limitations & incompatibilities with scripting languages ??Reinforcement of Java basics: o Embedded JavaScript o External JavaScript files (.js) o Simple Coding o Colouring Webpages o Scrolling Messages (Banners) ??Reinforcement of Java basics: o Embedded JavaScript o External JavaScript files (.js) o Simple Coding o Colouring Webpages o Scrolling Messages (Banners) ??Advanced JavaScript including: o Functions o “On” actions – onMouseOver; onLoad; onUnload; OnMouseOut; onFocus; onBlur; onChange; onClick; onDblClick; onAbort; onMouseDown/onMouseU p; onSubmit o Variables – Local & Global o Mathematics o Loops – For & While o Conditional Operations o Standard Objects o Forms o Frames o Graphic Handling o String Handling o Time & Date ??Advanced JavaScript including: o Functions o “On” actions – onMouseOver; onLoad; onUnload; OnMouseOut; onFocus; onBlur; onChange; onClick; onDblClick; onAbort; onMouseDown/onMouseUp; onSubmit o Variables – Local & Global o Mathematics o Loops – For & While o Conditional Operations o Standard Objects o Forms o Frames o Graphic Handling o String Handling o Time & Date o Document Properties Formatted Board Endorsed December 2006 Version 4 179 ??Extension of Web Java to cover: o Cookies o Java Applets ??Embedded VBscript including: o Program Anatomy o Sequences o Objects o Events o Iterations o Recursion o Front Ends o Frames ??Embedded VBscript including: o Program Anatomy o Sequences o Objects o Events o Iterations o Recursion o Front Ends o Frames o Linear Arrays ??Introduction to XHTML ??Introduction to XML & VML Board Endorsed December 2006 Version 4 180 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations SEMI1ARS Extrapolation Weightings 30-80% 20-70% 1otes on Task Types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 181 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. Teaching and Learning Strategies This unit’s focus is on the enhancement of website design through the addition of scripting structures. Students should complete a major task of designing, constructing, and uploading a website based on a design brief. The unit’s emphasis is on the acquisition and development of practical skills related to the use of scripts in website design and construction, and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment Creative and critical thinkers ??????? Enterprising problem-solvers ??????? Skilled and empathetic communicators ??? Informed and ethical decision-makers ??? Environmentally and culturally aware citizens Confident and capable users of technologies ??????? Independent and self-managing learners ??? Collaborative team members ??????? Specific Unit Resources The following resources and ideas could be used for delivery and assessment. Board Endorsed December 2006 Version 4 182 CD-ROMs “Millennium Collection of Computer Support Materials”, Lynformation P/L “Programmers Toolkit”, VITTA Books Baier, Martin. “Get Going with JavaScript”, e-Ways Boyle, Russel. “JavaScript for Beginners”, russelboyle.com Wondrasek, James. “Programming in JavaScript” (2nd ed.), Next Handbooks Green, Ron. “Learning Programming through JavaScript”, RGMT P/L Shelly, Gary; Cashman, Thomas; Quasney, Jeffrey; D. “JavaScript: Complete Concepts and Techniques”, (Shelly Cashman Series), Course Technology (Pub.) Green, Ron. “Learning Programming through VBscript”, RGMT P/L Hanke, Johann-Christian. “Get Going with XHTML Web Pages”, e-Ways Shelley, John. “XHTML and CSS Explained”, Bernard Babani (Publishing) Ltd Boyle, Russel. “XML for Beginners”, russelboyle.com Websites JS www.w3schools.com/js/default.asp www.scsite.com/js/qr.cfm webdeveloper.earthweb.com/webjs/jsmulti/ wps.aw.com/aw_webwizard/0,6065,60015-,00.html surf.de.uu.net/bookland/soft/koch/js/scriptno.htm www.webdevelopersnotes.com/tutorials/javascript/index.php3 VBS www.csidata.com/custserv/onlinehelp/VBSdocs/vbs19.htm www.w3schools.com/vbscript/default.asp XHTML www.w3schools.com/xhtml/ www.w3.org/MarkUp/ XML www.w3schools.com/xml/default.asp www.w3.org/XML/ VML Board Endorsed December 2006 Version 4 183 msdn.microsoft.com/workshop/author/vml/SHAPE/e_shape.asp Board Endorsed December 2006 Version 4 184 ITM Dynamic Web & Multimedia Integration A/T/V Value 1.0 (This combines Dynamic Website Construction, 0.5,and Web & Multimedia Integration, 0.5) Prerequisite Introduction to Website Design. Recommended for Theory – Digital Image, Sound and Video Editing Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a web development authoring tool to generate scripts to interact with an online database ??Use a web development authoring tool to generate scripts to interact with an online database ??Master the commands associated with a scripting language – assignment, decisions, loops ??Master the commands associated with a scripting language – assignment, decisions, loops ??Create scripts to insert, delete, and update records in an online database ??Create scripts to insert, delete, and update records in an online database ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database ??Use of scripting technologies to make web pages more dynamic – for example, using CSS, Javascript, Flash Actionscript etc... ??Use of scripting technologies to make web pages more dynamic – for example, using CSS, Javascript, Flash Actionscript etc... Board Endorsed December 2006 Version 4 185 ??work efficiently in an environment and apply OH&S procedures ??work efficiently in an environment and apply OH&S procedures ??understand issues relating to file size, files types and download rates when incorporating multimedia files into websites ??understand issues relating to file size, files types and download rates when incorporating multimedia files into websites ??understand the differences in download rates between various Internet connection types ??understand the differences in download rates between various Internet connection types ??edit and optimise sound and video files for inclusion in websites ??edit and optimise sound and video files for inclusion in websites ??design and create animations for inclusion in websites ??design and create complex animations for inclusion in websites ??integrate a range of applications in the process of web development ??integrate a range of applications in the process of web development ??understand and use the principles of project management to a website project ??understand and apply the principles of project management to a website project ??understand the role of a web server ??understand the role of a web server Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU1128B Operate a personal computer Elective ICA20105 ICPMM263B Access and use the internet Elective ICA20105 ICAU2013B Integrate commercial computing packages Elective ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective Formatted Board Endorsed December 2006 Version 4 186 Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons ??Manage security and passwords ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons o Manage security and passwords ??Usage of scripting (other than HTML) to enhance websites. ??Basic usage of a sound authoring package to edit sound files for inclusion in websites ??Basic usage of a video authoring package to edit video files for inclusion in websites(no more than a week) ??Understand animation file attritrubes and issues when incorporated in websites o File types and compatibility o Frames per second o Resolution o File size and download rates ??Usage of scripting (other than HTML) to enhance websites. Study of structure, syntax, and implementation of language ??Basic usage of a sound authoring package to edit sound files for inclusion in websites (no more than a week) ??Basic usage of a video authoring package to edit video files for inclusion in websites websites (no more than a week) ??Understand animation file attritrubes and issues when incorporated in websites o File types and compatibility o Frames per second o Resolution Formatted Board Endorsed December 2006 Version 4 187 ??Use an animation authoring package to create animations for inclusion in websites o Banners o Icons o Navigation elements o Use of a web site management system to construct a web site that integrates multimedia elements ??Develop and collect a range of Multimedia assets – animation, vide, sound ??Graphics – to be integrated into a website to enhance creativity and “stickiness” (engagement) of site. o File size and download rates ??Use an animation authoring package to create animations for inclusion in websites o Banners o Icons o Navigation elements o Use of a web site management system to construct a web site that integrates multimedia elements ??Develop and collect a range of Multimedia assets – animation, vide, sound ??Graphics – to be integrated into a website to enhance creativity and “stickiness” (engagement) of site. Board Endorsed December 2006 Version 4 188 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 189 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??? enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens ??? confident and capable users of technologies ??????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Downes-Powell, Gareth; Mairlot, Bruno; Green, Tim Dreamweaver MX : PHP web development. Board Endorsed December 2006 Version 4 190 McGrath, Mike PHP 5 in easy steps Schafer, Steven. Apache, MySQL, and PHP weekend crash course Websites http://www.php.net/ http://optusnet.dl.sourceforge.net/sourceforge/wampserver/wamp5_1.6.1.exe http://www.mysql.com/ http://au3.php.net/tut.php http://www.freewebmasterhelp.com/tutorials/php These were accurate at the time of publication. Board Endorsed December 2006 Version 4 191 ITM Web & Multimedia Integration A/T/V Value 0.5 Prerequisite Recommended for Theory – Digital Image, Sound and Video Editing Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??Use of scripting technologies to make web pages more dynamic – for example, using CSS, Javascript, Flash Actionscript etc... ??Use of scripting technologies to make web pages more dynamic – for example, using CSS, Javascript, Flash Actionscript etc... ??work efficiently in an environment and apply OH&S procedures ??work efficiently in an environment and apply OH&S procedures ??understand issues relating to file size, files types and download rates when incorporating multimedia files into websites ??understand issues relating to file size, files types and download rates when incorporating multimedia files into websites ??understand the differences in download rates between various Internet connection types ??understand the differences in download rates between various Internet connection types ??edit and optimise sound and video files for inclusion in websites ??edit and optimise sound and video files for inclusion in websites ??design and create animations for inclusion in websites ??design and create complex animations for inclusion in websites ??integrate a range of applications in the process of web development ??integrate a range of applications in the process of web development ??understand and use the principles of project management to a website project ??understand and apply the principles of project management to a website project ??understand the role of a web server ??understand the role of a web server Board Endorsed December 2006 Version 4 192 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the internet Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course ??Usage of scripting (other than HTML) to enhance websites. ??Basic usage of a sound authoring package to edit sound files for inclusion in websites ??Basic usage of a video authoring package to edit video files for inclusion in websites(no more than a week) ??Understand animation file attributes and issues when incorporated in websites o File types and compatibility o Frames per second o Resolution o File size and download rates ??Use an animation authoring package to create animations for inclusion in websites o Banners o Icons o Navigation elements ??Usage of scripting (other than HTML) to enhance websites. Study of structure, syntax, and implementation of language ??Basic usage of a sound authoring package to edit sound files for inclusion in websites (no more than a week) ??Basic usage of a video authoring package to edit video files for inclusion in websites websites (no more than a week) ??Understand animation file attributes and issues when incorporated in websites o File types and compatibility o Frames per second o Resolution o File size and download rates ??Use an animation authoring package to create animations for inclusion in websites o Banners o Icons o Navigation elements Formatted Formatted Board Endorsed December 2006 Version 4 193 o Use of a web site management system to construct a web site that integrates multimedia elements ??Develop and collect a range of Multimedia assets – animation, vide, sound ??Graphics – to be integrated into a website to enhance creativity and “stickiness” (engagement) of site. o Use of a web site management system to construct a web site that integrates multimedia elements ??Develop and collect a range of Multimedia assets – animation, vide, sound ??Graphics – to be integrated into a website to enhance creativity and “stickiness” (engagement) of site. Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% Board Endorsed December 2006 Version 4 194 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Board Endorsed December 2006 Version 4 195 Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??? enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens ??? confident and capable users of technologies ??????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Coley, Lon. How to use Macromedia Dreamweaver MX & Fireworks MX Daugherty, Debi. Fireworks MX 2004 for visual learners Grannell, Craig; McLachlan, George; Powers, David. Foundation Macromedia Dreamweaker MX 2004. Leete, Gurdy; Finkelstein, Ellen. Macromedia FLASH MX for Dummies Vandome, Nick. Dreamweaker MX in easy steps Vandome, Nick. Fireworks MX in easy steps Dreamweaver MX 2004 for visual learners Websites http://www.dreamweaverfever.com/ http://www.dwfaq.com/tutorials/ http://www.andrewwooldridge.com/dreamweaver/ http://www.dwkillertips.com/ These were accurate at the time of publication. Board Endorsed December 2006 Version 4 196 ITM: Dynamic Website Construction A/T/V Value 0.5 Prerequisite Introduction to Website Design 0.5. Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a web development authoring tool to generate scripts to interact with an online database ??Use a web development authoring tool to generate scripts to interact with an online database ??Master the commands associated with a scripting language – assignment, decisions, loops ??Master the commands associated with a scripting language – assignment, decisions, loops ??Create scripts to insert, delete, and update records in an online database ??Create scripts to insert, delete, and update records in an online database ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database Board Endorsed December 2006 Version 4 197 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU1128B Operate a personal computer Elective ICA20105 ICPMM263B Access and use the internet Elective ICA20105 ICAU2013B Integrate commercial computing packages Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons o Manage security and passwords ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons o Manage security and passwords Formatted Formatted Board Endorsed December 2006 Version 4 198 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30- 80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 199 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??? enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens ??? confident and capable users of technologies ??????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Downes-Powell, Gareth; Mairlot, Bruno; Green, Tim Dreamweaver MX : PHP web development. Board Endorsed December 2006 Version 4 200 McGrath, Mike PHP 5 in easy steps Schafer, Steven. Apache, MySQL, and PHP weekend crash course Websites http://www.php.net/ http://optusnet.dl.sourceforge.net/sourceforge/wampserver/wamp5_1.6.1.exe http://www.mysql.com/ http://au3.php.net/tut.php http://www.freewebmasterhelp.com/tutorials/php These were accurate at the time of publication. Board Endorsed December 2006 Version 4 201 ITM: Digital Editing and 2D Animation A/T/V Value 1.0 (This combines Digital Image, Sound and Video Editing, 0.5 with 2D Animation, 0.5) The main focus of the 2D Animation part of this unit should be, not so much drawing and animation skills but the application of a scripting language. For moderation folders Flash FLA files are to be submitted in addition to SWL files to enable code to be analysed. Prerequisites Nil Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??Create interactive animations controlled by the application of a scripting language. ??Create interactive animations controlled by the application of a scripting language. ??demonstrate an understanding of image enhancement, manipulation and image crafting techniques using various software programs. ??demonstrate an understanding of image enhancement, manipulation and image crafting techniques using various software programs. ??identify the differences between different image formats, file management protocols, and explain the differences between vector and bitmapped images. ??identify the differences between different image formats, file management protocols, and explain the differences between vector and bitmapped images. ??understand the basic elements of editing Digital Audio, file types, methods of capture, compression and incorporate it and its techniques into an application ??understand the basic elements of editing Digital Audio, file types, methods of capture, compression and incorporate it and its techniques into an application ??demonstrate a basic understanding of editing Digital Video, file types, methods of capture, compression, and incorporate it and its techniques into an application ??demonstrate a high degree of understanding of editing Digital Video, file types, methods of capture, compression, and incorporate it and its techniques into an application ??describe, in simple terms, the process of computer animation, the major types of animation and their usage ??describe, in detail, the process of computer animation, the major types of animation and their usage ??set up and use the paint and animation features of an animation package to create short animated sequences for simple themes ??set up and use the paint and animation features of an animation package to create short animated sequences for simple and complex themes Board Endorsed December 2006 Version 4 202 ??use simple computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening ??use simple and complex computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening ??create samples of animated text and titling and the incorporation of sound into the animation ??create samples of animated text and titling and the incorporation of sound into the animation ??demonstrate perspective techniques in animation ??demonstrate perspective techniques in animation ??create an animated character, capable of movement and expression ??create an animated character, capable of movement and expression ??edit and assemble simple animation sequences into scenes and presentations ??edit and assemble simple and more complex animation sequences into scenes and presentations Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2006B Operate computing packages Core ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the internet Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). The main focus of the 2D Animation part of this unit should be, not so much drawing and animation skills but the application of a scripting language. Formatted Formatted Board Endorsed December 2006 Version 4 203 A Course T Course Basic techniques in the production of 2D digital artwork ??correct use of the painting & editing tools, pallets ??correct use of image manipulation tools Basic techniques in the production of 2D digital artwork ??correct use of the painting & editing tools, pallets ??correct use of image manipulation tools Digital image formats and compression ??file management including saving and storing image files, importing and exporting image files Digital image formats and compression ??file management including saving and storing image files, importing and exporting image files ??the difference between Vector and Bitmap images and their uses Digital image capture ??scanning ??digital cameras ??Internet and commercial sources ??Graphics Tablet Digital image capture ??scanning ??digital cameras ??internet and commercial sources ??graphics Tablet ??shutter speed ??camera features ??pixel resolution ??image balance/exposure Digital image printing Digital image printing DPI and Resolution Screen Sizes Familiarisation of Digital imaging programs Familiarisation of Digital imaging programs Presentation of Digital images Presentation of Digital images Digital collage and montage techniques ??colour and tone correction ??image enhancement techniques Digital audio formats ??editing techniques for digital audio files ??techniques for applying digital effects ??methods of capture Digital audio formats ??editing techniques for digital audio files ??compositing tracks ??techniques for applying digital effects ??compression ??methods of capture Digital Editing of Video ??File types ??Methods of capture ??Compression ??Editing techniques and enhancements Digital Editing of Video ??File types ??Methods of capture ??Compression ??Editing techniques and enhancements Copyright issues Copyright issues Occupational Health and Safety Issues Occupational Health and Safety Issues Formatted Board Endorsed December 2006 Version 4 204 Familiarisation of Digital video and audio programs Animation including: ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Principles, applications and usage of computer animation ??Technical implications of animation ??Animation software familiarisation and practice ??Raster Graphics and Vector graphics program features and usage ??Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles ??Animation program features such as frame-by-frame, shape tweened, and motion tweened animation ??Animated text, manipulate its behaviour and appearance ??Features of currently available computer animation packages ??Manipulate Text ??Graphic ??Image ??Animation ??Sound ??Create a simple sequence using prepared multimedia elements ??Prepare a storyboard for the project ??Create the program structure ??Create simple elements for the presentation ??Assemble the various elements in the presentation Familiarisation of Digital video and audio programs Animation including: ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Principles, applications and usage of computer animation ??Technical implications of animation ??Animation software familiarisation and practice ??Raster Graphics and Vector graphics program features and usage ??Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles ??Animation program features such as frame-by-frame, shape tweened, and motion tweened animation ??Animated text, manipulate its behaviour and appearance ??Features of currently available computer animation packages ??Working with perspective and depth ??Creating an animated character capable of walking and facial movements ??Editing and assembling animation elements using cuts and transitions ??Manipulate Text ??Graphic ??Image ??Animation ??Incorporating video ??Sound ??Create a simple sequence using prepared multimedia elements ??Use the tools and features of a range of authoring software ??Create short samples of screen sequences and interaction using a simple navigational structure Board Endorsed December 2006 Version 4 205 ??Prepare a script for a multimedia presentation ??Prepare a storyboard for the project ??Create the program structure ??Create simple elements for the presentation ??Assemble the various elements in the presentation Teaching and Learning Strategies The emphasis will be given to the development and presentation of items, which communicate, using sound, graphics and video. Students will examine a variety of software and peripheral devices to produce graphics, sound, video and animation modules, to be used in larger productions in a variety of contexts. Emphasis will also be given to the acquisition and development of practical skills related to animation and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Board Endorsed December 2006 Version 4 206 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 207 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. A course: Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Software Access to a range of appropriate graphics, sound, video and animation software. Current titles include: ??Macromedia Freehand and Fireworks ??Adobe Photoshop ??Gimp ??Director ??Adobe Premier ??DV Studio ??DV Raptor ??Macromedia Flash ??Corel Draw ??Macromedia Sound Edit ??Audacity ??iMovie Board Endorsed December 2006 Version 4 208 ??Windows Movie Maker Texts Weinman, L.,. Flash MX Hands-on Training, Peachpit Press, 2003. Cavanaugh, K., Fireworks MX, A Beginner’s Guide, McGraw-Hill Publishing. 2003. Gross, P., Diector 8 and Lingo, Macromedia Press. Websites http://www.newtown.tased.edu.au/computingweb/tutorials.htm http://www.adobe.com http://www.adobe.com/support/fireworks/tutorial_index.html http://www.tsof.edu.au/resources/sound/Support/tutorial_ed_beginner1.asp http://audacity.sourceforge.net/help/tutorials http://www.apple.com/support/imovie/tutorial/ http://www.adobe.com/support/flash/tutorial_index.html http://www.idleworm.com/how/index.shtml http://www.gimp.org/tutorials/Simple_Animations/ http://www.newtown.tased.edu.au/computingweb/tutorials.htm These were accurate at the time of publication. Board Endorsed December 2006 Version 4 209 ITM: Digital Image, Sound and Video Editing A/T/V Value 0.5 Prerequisites %il Teachers should consult with %etwork Administrator about storage requirements. Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??demonstrate an understanding of image enhancement, manipulation and image crafting techniques using various software programs ??identify the differences between different image formats, file management protocols, and explain the differences between vector and bitmapped images ??understand the basic elements of editing Digital Audio, file types, methods of capture, compression and incorporate it and its techniques into an application ??demonstrate an understanding of editing Digital Video, file types, methods of capture, compression, and incorporate it and its techniques into an application. ??demonstrate an understanding of image enhancement, manipulation and image crafting techniques using various software programs ??identify the differences between different image formats, file management protocols, and explain the differences between vector and bitmapped images ??understand the basic elements of editing Digital Audio, file types, methods of capture, compression and incorporate it and its techniques into an application ??demonstrate an understanding of editing Digital Video, file types, methods of capture, compression, and incorporate it and its techniques into an application. ??understand the concept of digital data transfer rates, in relation to internet downloads (broadband/dial up), USB and Firewire connections ??understand the basic structure of digital data – the BIT – and how to use concepts such as bit rate, bit depth, colour quality, frame rates, and sound frequencies to predict file sizes of multimedia assets Board Endorsed December 2006 Version 4 210 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2006B Operate computing packages Core ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the internet Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). A Course T Course Basic techniques in the production of 2D digital artwork ??correct use of the painting & editing tools, pallets ??correct use of image manipulation tools Digital image formats and compression ??file management including saving and storing image files, importing and exporting image files Digital image capture ??scanning ??digital cameras ??Internet and commercial sources ??Graphics Tablet Digital image printing Familiarisation of Digital imaging programs Presentation of Digital images Basic techniques in the production of 2D digital artwork ??correct use of the painting & editing tools, pallets ??correct use of image manipulation tools Digital image formats and compression The difference between Vector and Bitmap images and their uses Digital image capture ??scanning ??digital cameras ??Internet and commercial sources ??Graphics Tablet Digital image printing DPI and Resolution Screen Sizes Familiarisation of Digital imaging programs Presentation of Digital images Digital collage and montage techniques ??colour and tone correction ??image enhancement techniques Formatted Formatted Board Endorsed December 2006 Version 4 211 Digital audio formats ??editing techniques for digital audio files ??techniques for applying digital effects ??methods of capture Digital Editing of Video ??file types ??methods of capture ??compression ??editing techniques and enhancements Familiarisation of Digital video and audio programs ??copyright issues Digital audio formats ??editing techniques for digital audio files ??compositing tracks ??techniques for applying digital effects ??compression ??methods of capture Digital Editing of Video ??file types ??methods of capture ??compression ??editing techniques and enhancements Familiarisation of Digital video and audio programs Firewire hardware, characteristics and speed Copyright issues ??Occupational Health and Safety Teaching and Learning Strategies The emphasis will be on the development and presentation of items, which communicate, using sound, graphics and video. Students will examine a variety of software and peripheral devices to produce graphics, sound, video and animation modules, to be used in larger productions in a variety of contexts. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Board Endorsed December 2006 Version 4 212 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 213 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. A course: Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Software Access to a range of appropriate graphics, sound, video and animation software. Current packages include: ??Macromedia Freehand and Fireworks ??Adobe Photoshop ??Gimp ??Power Point ??DV Studio ??DV Raptor ??Corel Draw ??Macromedia Sound Edit ??Audacity ??iMovie ??Windows Movie Maker Board Endorsed December 2006 Version 4 214 Websites http://www.newtown.tased.edu.au/computingweb/tutorials.htm http://www.adobe.com http://www.adobe.com/support/fireworks/tutorial_index.html http://www.tsof.edu.au/resources/sound/Support/tutorial_ed_beginner1.asp http://audacity.sourceforge.net/help/tutorials http://www.apple.com/support/imovie/tutorial/ These were accurate at the time of publication. Board Endorsed December 2006 Version 4 215 ITM: 2D Animation A/T/V Value 0.5 The main focus of this unit should be, not so much drawing and animation skills but the application of a scripting language. For moderation folders Flash FLA files are to be submitted in addition to SWL files to enable code to be analysed. Prerequisites Nil Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??create interactive animations controlled by the application of a scripting language. ??describe the process of computer animation, the major types of animation and their usage ??set up and use the paint and animation features of an animation package to create short animated sequences ??use computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening. ??Understand the processes, requirements and limitations of rendering and lighting ??create samples of animated text and titling and the incorporation of sound and video into the animation ??demonstrate perspective techniques in animation ??create an animated character, capable of movement and expression ??edit and assemble animation sequences into scenes and presentations. ??create interactive animations controlled by the application of a scripting language ??describe the process of computer animation, the major types of animation and their usage ??set up and use the paint and animation features of an animation package to create short animated sequences ??use computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening. ??Understand the processes, requirements and limitations of rendering and lighting ??create samples of animated text and titling and the incorporation of sound and video into the animation ??demonstrate perspective techniques in animation ??create an animated character, capable of movement and expression ??edit and assemble animation sequences into scenes and presentations. Board Endorsed December 2006 Version 4 216 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2006B Operate computing packages Core ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). The main focus of the 2D Animation part of this unit should be, not so much drawing and animation skills but the application of a scripting language. A Course T Course ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Animation including: o Principles, applications and usage of computer animation o Technical implications of animation o Animation software familiarisation and practice o Raster Graphics and Vector graphics program features and usage o Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles o Animation program features such as frame-by-frame, shape tweened, and motion tweened ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Animation including: o Principles, applications and usage of computer animation o Technical implications of animation o Animation software familiarisation and practice o Raster Graphics and Vector graphics program features and usage o Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles o Animation program features such as frame-by-frame, shape tweened, and motion tweened animation Formatted Formatted Board Endorsed December 2006 Version 4 217 animation o Animated text, manipulate its behaviour and appearance o Features of currently available computer animation packages o Manipulate Text o Graphic o Image o Animation o Sound o Create a simple sequence using prepared multimedia elements o Prepare a storyboard for the project o Create the program structure o Create simple elements for the presentation o Assemble the various elements in the presentation o Animated text, manipulate its behaviour and appearance o Features of currently available computer animation packages o Working with perspective and depth o Creating an animated character capable of walking and facial movements o Editing and assembling animation elements using cuts and transitions o Manipulate Text o Graphic o Image o Animation o Incorporating video o Sound o Create a simple sequence using prepared multimedia elements o Use the tools and features of a range of authoring software o Create short samples of screen sequences and interaction using a simple navigational structure o Prepare a script for a multimedia presentation o Prepare a storyboard for the project o Create the program structure o Create simple elements for the presentation o Assemble the various elements in the presentation Teaching and Learning Strategies The emphasis will be on the acquisition and development of practical skills related to animation and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Board Endorsed December 2006 Version 4 218 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 219 A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. A course: Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens ????? confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Software Access to a range of appropriate graphics, sound, video and animation software. Current titles include: ??Macromedia Freehand and Fireworks ??Adobe Photoshop ??Gimp ??Director ??Adobe Premier ??DV Studio ??DV Raptor ??Macromedia Flash ??Macromedia Sound Edit ??Audacity Texts Weinman, L.,. Flash MX Hands-on Training, Peachpit Press, 2003. Board Endorsed December 2006 Version 4 220 Cavanaugh, K., Fireworks MX, A Beginner’s Guide, McGraw-Hill Publishing. 2003. Gross, P.,. Diector 8 and Lingo, Macromedia Press. Websites http://www.adobe.com/support/flash/tutorial_index.html http://www.idleworm.com/how/index.shtml http://www.gimp.org/tutorials/Simple_Animations/ http://www.newtown.tased.edu.au/computingweb/tutorials.htm These were accurate at the time of publication. Board Endorsed December 2006 Version 4 221 ITM: Dynamic Websites & 2D Animation A/T/V Value 1.0 (This unit combines Dynamic Website Construction, 0.5 with 2D Animation, 0.5) The main focus of the 2D Animation part of this unit should be, not so much drawing and animation skills but the application of a scripting language. For moderation folders Flash FLA files are to be submitted in addition to SWL files to enable code to be analysed. Prerequisite Introduction to Website Design 0.5 Specific Unit Goals This A unit should enable students to: This T unit should enable students to: ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a scripting language and database combination to facilitate online processing and database storage capabilities. For example using PHP/Mysql, ASP/Access, JSP/Mysql etc… ??Use a web development authoring tool to generate scripts to interact with an online database ??Use a web development authoring tool to generate scripts to interact with an online database ??Master the commands associated with a scripting language – assignment, decisions, loops ??Master the commands associated with a scripting language – assignment, decisions, loops ??Create scripts to insert, delete, and update records in an online database ??Create scripts to insert, delete, and update records in an online database ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to search and query an online database, and provide login access/user authentication facilities to a web site ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Create scripts to generate text files as a means of storing information, as an alternative to using a database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database ??Use a database management tool – for example phpmyadmin – to create users and databases and provide a testing environment for an online database ??Create interactive animations controlled by the application of a scripting language. ??Create interactive animations controlled by the application of a scripting language. Board Endorsed December 2006 Version 4 222 ??Describe the process of computer animation, the major types of animation and their usage ??Set up and use the paint and animation features of an animation package to create short animated sequences ??Use computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening. ??Create samples of animated text and titling and the incorporation of sound and video into the animation ??Demonstrate perspective techniques in animation ??Create an animated character, capable of movement and expression ??Edit and assemble animation sequences into scenes and presentations. ??Describe the process of computer animation, the major types of animation and their usage ??Set up and use the paint and animation features of an animation package to create short animated sequences ??Use computer drawing and animation techniques to create a range of traditional and computer animation effects such as shape and movement tweeening. ??Create samples of animated text and titling and the incorporation of sound and video into the animation ??Demonstrate perspective techniques in animation ??Create an animated character, capable of movement and expression ??Edit and assemble animation sequences into scenes and presentations. Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU1128B Operate a personal computer Elective ICA20105 ICAU2006B Operate computing packages Core ICA20105 ICAU2013B Integrate commercial computing packages Elective ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM263B Access and use the internet Elective Formatted Board Endorsed December 2006 Version 4 223 Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). The main focus of the 2D Animation part of this unit should be, not so much drawing and animation skills but the application of a scripting language. A Course T Course ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons o Manage security and passwords ??Understand how a dynamic website works and association terminology. ??Use a web development authoring to generate scripts to o Validate a form o Process a form o Connect to a database server o Select a database o Query a database ??Use an online database package to o Create a new database o Create table o Insert data o Editing record o Import data o Create users and logons o Manage security and passwords Animation including: ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Principles, applications and usage of computer animation ??Technical implications of animation ??Animation software familiarisation and practice ??Raster Graphics and Vector graphics program features and usage Animation including: ??Use of scripting to create interactive animations – using programmable mouse events. Rather than just letting animations run their course, giving the user a greater level of control of how the animations will play out based on programming structures. ??Principles, applications and usage of computer animation ??Technical implications of animation ??Animation software familiarisation and practice ??Raster Graphics and Vector graphics program features and usage Formatted Formatted Board Endorsed December 2006 Version 4 224 ??Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles ??Animation program features such as frame-by-frame, shape tweened, and motion tweened animation ??Animated text, manipulate its behaviour and appearance ??Features of currently available computer animation packages ??Manipulate Text ??Graphic ??Image ??Animation ??Sound ??Create a simple sequence using prepared multimedia elements ??Prepare a storyboard for the project ??Create the program structure ??Create simple elements for the presentation ??Assemble the various elements in the presentation ??Basic drawing and painting tools eg working with strokes and fills, creating custom colours, gradients, and line styles ??Animation program features such as frame-by-frame, shape tweened, and motion tweened animation ??Animated text, manipulate its behaviour and appearance ??Features of currently available computer animation packages ??Working with perspective and depth ??Creating an animated character capable of walking and facial movements ??Editing and assembling animation elements using cuts and transitions ??Manipulate Text ??Graphic ??Image ??Animation ??Incorporating video ??Sound ??Create a simple sequence using prepared multimedia elements ??Use the tools and features of a range of authoring software ??Create short samples of screen sequences and interaction using a simple navigational structure ??Prepare a script for a multimedia presentation ??Prepare a storyboard for the project ??Create the program structure ??Create simple elements for the presentation ??Assemble the various elements in the presentation Teaching and Learning Strategies The emphasis will be on the development and design of websites. Students will examine commercial websites to identify component of effect website design. Students will construct websites for different audience and purposes using a variety of techniques and software The emphasis will be on the acquisition and development of practical skills related to website design and construction and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Board Endorsed December 2006 Version 4 225 Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. The emphasis will be on the acquisition and development of practical skills related to animation and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate information and ideas about digital imaging and sound manipulation. Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% Board Endorsed December 2006 Version 4 226 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. A course Assignments, projects, orals These tasks should emphasise knowledge, recall, understanding and application skills with less focus on analysis, creating and evaluation. Tests These tasks should give students the opportunity to demonstrate their knowledge and understanding while showing their application skills. Less emphasis should be placed on analysis and evaluation skills. Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ??? enterprising problem-solvers ??????? skilled and empathetic communicators ??? informed and ethical decision-makers ??? environmentally and culturally aware citizens ??? confident and capable users of technologies ??????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Books Downes-Powell, Gareth; Mairlot, Bruno; Green, Tim Dreamweaver MX : PHP web development. Weinman, L.,. Flash MX Hands-on Training, Peachpit Press, 2003. Cavanaugh, K., Fireworks MX, A Beginner’s Guide, McGraw-Hill Publishing. 2003. Board Endorsed December 2006 Version 4 227 Gross, P.,. Diector 8 and Lingo, Macromedia Press. Software Access to a range of appropriate graphics, sound, video and animation software. Current titles include: ??Macromedia Freehand and Fireworks ??Adobe Photoshop ??Gimp ??Director ??Adobe Premier ??DV Studio ??DV Raptor ??Macromedia Flash ??Macromedia Sound Edit ??Audacity Texts Websites http://www.adobe.com/support/flash/tutorial_index.html http://www.idleworm.com/how/index.shtml http://www.gimp.org/tutorials/Simple_Animations/ http://www.newtown.tased.edu.au/computingweb/tutorials.htm These were accurate at the time of publication. Board Endorsed December 2006 Version 4 228 ITM: 3D Graphics & 3DAnimation T/V Value 1.0 (This unit combines 3D Graphics and Modelling, 0.5 with 3D Animation, 0.5) Prerequisites Digital Editing and 2D Animation 0.5 Specific Unit Goals This T unit should enable students to: ??create static 3D models using a range of techniques ??apply materials and textures to 3D objects ??render 3D scenes to graphical file formats ??apply lighting and cameras to 3D scenes ??integrate 3D graphics into other programs. ??animate 3D objects and cameras ??apply lighting, camera ??add sounds to 3D scenes ??create biped figures and apply footstep, pre-recorded biped animation files and keyframed motion to them ??use a video editing package to incorporate rendered 3D video and graphics, titles and sound ??understand and use the basic principles associated with applying physiques to bipeds ??create a fly through of a 3D graphic scene ??export 3D files in the W3D format, to then be imported into Macromedia director to facilitate interactivity in a Shockwave file ??Understand the concepts involved with low polygon modelling, and know how to perform polygon counts to keep track of scene complexity ??Investigate the differences between UV Mapping and Planar Mapping ??Understand the differences between the full range of lighting types, and what situations they are best suited to. ??Look at a variety of rendering techniques, including displacement and bitmaps. ??utilize the Reactor real world physics engine to perform realistic gravity and weight based simulations to produce animations – involving fluids, rigid body collections, and rag doll biped objects Board Endorsed December 2006 Version 4 229 Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core IAC20105 ICAU1128B Operate a personal computer Pre-requisite for core units: ICAU2013B and ICAD2012A Elective ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the Internet Elective Content Static 3D graphics ??Understanding 3D coordinate systems ??navigating viewports; setting viewport layouts; viewport shading; ??understanding the 3D application’s interface; loading and sequentially saving; preview rendering of multiple or single frames; ??output resolution and file size; saving render outputs; ??modeling in world coordinates; transforms; cloning; using display menu; ??Materials ??Lighting ??Skinning methods ??Rendering ??boolean operations; sub-object manipulation; spline modelling, lofting ??understanding the modifier stack; basic deformation tools and modifiers; ??applying materials; using cameras; creating and applying light; 3D Graphics and Animation ??basic animation techniques – keyframe, biped, objects, cameras ??rendering of scenes ??Biped movement ??trackview overview; space warps; basic particle systems, fly throughs ??Adding sound and video ??parent-child relationships; ??using cameras; creating and applying light; Formatted Board Endorsed December 2006 Version 4 230 Teaching and Learning Strategies The emphasis will be given to the development and presentation of items using 3D graphics. Students will examine a variety of software and peripheral devices to produce graphics and animation modules, to be used in larger productions in a variety of contexts. Emphasis will also be given to the acquisition and development of practical skills related to the production of 3D graphics and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate ideas and information about digital imaging using appropriate terminology. Students may examine the use of on-line tutoring and demonstration programs as an efficient and economical means of gaining information about technological advancements in the production of 3D graphics and animations. Board Endorsed December 2006 Version 4 231 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarising information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 232 Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Suggested Software: ??3D Studio Max ??Blender ??Anim8or ??Rhinoceros Web sites: http://www.3d-tutorial.com/ http://www.3dlinks.com/ http://www.blender.org http://www.anim8or.com/ These were accurate at the time of publication. Board Endorsed December 2006 Version 4 233 ITM: 3D Graphics and Modelling T/V Value 0.5 Prerequisites Digital Editing and 2D Animation 0.5 Specific Unit Goals This T unit should enable students to: ??create static 3D models using a range of techniques ??apply materials and textures to 3D objects ??render 3D scenes to graphical file formats ??apply lighting and cameras to 3D scenes ??integrate 3D graphics into other programs. Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core IAC20105 ICAU1128B Operate a personal computer Pre-requisite for core units: ICAU2013B and ICAD2012A Elective ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the Internet Elective Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). Static 3D graphics ??Understanding 3D coordinate systems ??navigating viewports; setting viewport layouts; viewport shading ??understanding the 3D application’s interface; loading and sequentially saving preview rendering of multiple or single frames ??output resolution and file size; saving render outputs ??modelling in world coordinates; transforms; cloning; using display menu ??materials ??lighting Formatted Formatted Board Endorsed December 2006 Version 4 234 ??skinning methods ??rendering ??boolean operations; sub-object manipulation; spline modelling, lofting ??understanding the modifier stack; basic deformation tools and modifiers ??applying materials; using cameras; creating and applying light Teaching and Learning Strategies The emphasis will be given to the development and presentation of items using 3D graphics. Students will examine a variety of software and peripheral devices to produce graphics and animation modules, to be used in larger productions in a variety of contexts. Emphasis will also be given to the acquisition and development of practical skills related to the production of 3D graphics and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate ideas and information about digital imaging using appropriate terminology. Students may examine the use of on-line tutoring and demonstration programs as an efficient and economical means of gaining information about technological advancements in the production of 3D graphics. Board Endorsed December 2006 Version 4 235 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarising information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 236 Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Suggested Software: ??3D Studio Max ??Blender ??Anim8or ??Rhinoceros Web sites: http://www.3d-tutorial.com/ http://www.3dlinks.com/ http://www.blender.org http://www.anim8or.com/ Board Endorsed December 2006 Version 4 237 ITM: 3D Animation T/V Value 0.5 Prerequisite Digital Editing and 2D Animation 0.5, Static 3D Graphics 0.5 Specific Unit Goals This T unit should enable students to: animate 3D objects and cameras apply lighting, camera add sounds to 3D scenes create biped figures and apply footstep, pre-recorded biped animation files and keyframed motion to them use a video editing package to incorporate rendered 3D video and graphics, titles and sound understand and use the basic principles associated with applying physiques to bipeds create a fly through of a 3D graphic scene export 3D files in the W3D format, to then be imported into Macromedia director to facilitate interactivity (where applicable). Units of Competency This is a guide to the units of competence that may be assessed concurrently with this unit. Teachers should check competency requirements carefully to ensure that relevant elements are delivered and assessed. Certificate Unit Code Unit 1ame Core/ Elective ICA20105 BSBCMN106B Follow workplace safety procedures Core ICA20105 ICAU2013B Integrate commercial computing packages Core IAC20105 ICAU1128B Operate a personal computer Pre-requisite for core units: ICAU2013B and ICAD2012A Elective ICA20105 ICAW2011B Work individually or as a team member to achieve organisational goals Elective ICA20105 ICPMM321B Capture a digital image Elective ICA20105 ICPMM263B Access and use the Internet Elective Formatted Board Endorsed December 2006 Version 4 238 Content In many areas of the unit, the topics will be the same whether students are undertaking the A or T level. The difference will be in the depth of understanding that is required, the amount of teacher guidance that is provided, and the level of cognitive tasks that are the focus of assessment items (see %otes on task types below). ??basic animation techniques – keyframe, biped, objects, cameras ??rendering of scenes ??Biped movement ??trackview overview; space warps; basic particle systems, fly throughs ??Adding sound and video ??parent-child relationships; ??using cameras; creating and applying light; Teaching and Learning Strategies The emphasis will be given to the development and presentation of items using 3D animations. Students will examine a variety of software and peripheral devices to produce graphics and animation modules, to be used in larger productions in a variety of contexts. Emphasis will also be given to the acquisition and development of practical skills related to the production of 3D animations and then transferring and building on the acquired skills in designing solutions to problems. Use should be made of a variety of problems to enable students to apply the appropriate design methodologies. Students will be helped to develop teamwork strategies to assist with problem solving in groups. They will be encouraged to communicate ideas and information about digital imaging using appropriate terminology. Students may examine the use of on-line tutoring and demonstration programs as an efficient and economical means of gaining information about technological advancements in the production of 3D animations. Formatted Board Endorsed December 2006 Version 4 239 Assessment Assessment Task Types Task Types Assignments and Projects Orals Tests Remembering Understanding Applying Researching terms and concepts Summarizing information Following verbal and written instructions Simple documentation Guided projects Communication skills Citing & Referencing Use of correct terminology Simple questioning In class and knowledge recall tests Examinations Analysing Creating and Evaluating Compare and contrast Critical essays System development Problem-solving Complex documentation Modelling Construction Algorithm construction Evaluation and reflection Open-ended tasks Extended projects Evaluation and reflection Design and integration Complex questions and explanations Seminars Extrapolation Weightings 30-80% 20-70% 1otes on task types T course Assignments, projects, orals These tasks should emphasise complex skills of analysis, creating and evaluation putting less focus on simple knowledge recall or basic understanding. Tests This task should give students the opportunity to demonstrate their knowledge and understanding while providing the opportunity to extrapolate and show complex analysis. Board Endorsed December 2006 Version 4 240 Additional Assessment Advice The ACT Board of Senior Secondary Studies recommends 4-6 assessment tasks across a standard unit (1.0) and 2- 3 assessment tasks for a half standard unit (0.5). These should not be a compilation of a number of small discrete tasks (e.g. mini-tests) but may include a portfolio that provides coherent evidence of the depth and breadth of student learning. Presentation and word processing applications must not be the sole basis of assessment. A course: Student Capabilities Evidence could be in: Student Capabilities Goals Content Teaching Assessment creative and critical thinkers ????? enterprising problem-solvers ????? skilled and empathetic communicators ????? informed and ethical decision-makers ????? environmentally and culturally aware citizens confident and capable users of technologies ????? independent and self-managing learners ??? collaborative team members ????? Specific Unit Resources Resources and ideas for delivering and assessing units of competence http://hsc.csu.edu.au/info_tech/ Software ??3D Max Studio ??Mayar ??Blender ??Anim8or ??Rhinoceros Web sites http://www.3d-tutorial.com/ http://www.3dlinks.com/ http://www.blender.org http://www.anim8or.com/ These were accurate at the time of publication. Board Endorsed December 2006 Version 4 241 2 Get Going with JavaScript Australian 1st edition, 1st printing, March 2002. Published in Australia Under Licence by e-Ways Pty Limited (ABN 94 086 732 121). Printed by Craft Printing Pty Ltd. Distributed by Network Distribution Company. The e-Ways Concept The world is buzzing with electronic commerce, e-mail, electronic trading and computers in schools. A telephone, a television and a computer in every home – not to mention all the other gadgets. So much to learn but where to start? We hope these simple computer books can help you get going with your computer and get a grasp on some aspects of the information age. e-Ways Pty Limited are proud to be producing these wonderful and simple computer books for the Australian and New Zealand markets. As they are published the books will be distributed through leading bookstores. In addition we offer a mail order service where the other options may be inconvenient or not available. Mail Order Please refer to our contact details, Order Form and descriptions of books on pages 63 to 66. e-Ways hope that you will find the books easy to follow and we wish you many more hours of enjoyment and pleasure with your PC. Please recommend our books to other people. Disclaimer This book is designed for the purpose of self-tuition, training and leisure and is by no means a complete guide to all the features in the Java programming language. This book is sold as is, without warranty of any kind. Although every care has been taken to ensure that the information contained in this book is correct at the time of publication, neither the author, the publisher nor e-Ways Pty Limited accept responsibility for any inaccuracies nor shall be responsible or liable to the purchaser or any other person or entity with respect to any liability, loss, or damage caused or alleged to have been caused directly or indirectly by the information or any instructions contained in this book or the software or hardware products described in it. Trademarks All trademarks used in this book are properties of their respective owners and are acknowledged. Instead of inserting the trademark symbol at every occurrence of a trademarked name, trademarked names are used in this book in a referential fashion only and to the benefit of the trademark owner, with no intention of infringement of the trademark. Get Going with JavaScript 3 Table of Contents The Basics ......................................................... 5 The Necessary Software .................................. 5 HTML.............................................................. 5 What are HTML Pages?........................................ 5 Brief HTML Reference Guide .............................. 5 HTML and JavaScript ..................................... 7 Incorporation in the Header .................................. 7 Carrying out Code Given Particular Actions ........ 8 Incorporation in the Body ..................................... 8 First JavaScript Programming ....................... 8 Hello World..................................................... 8 Hello World without Parameters........................... 8 Hello World with Parameters................................ 9 What Time is it? ............................................ 10 Page Reference .............................................. 11 Event Handler ................................................ 12 onLoad........................................................... 12 onUnload ....................................................... 12 onMouseOver ................................................ 13 onMouseOut .................................................. 13 onFocus ......................................................... 13 onBlur............................................................ 14 onChange....................................................... 15 onClick .......................................................... 15 javascript ....................................................... 16 onSubmit ....................................................... 17 Functions......................................................... 17 Variables ......................................................... 18 Local Variables.............................................. 18 Global Variables............................................ 19 Mathematical Operations.............................. 20 Repeated Performance .................................. 21 Looping with for............................................ 21 Looping with while........................................ 23 Conditional Operations ................................. 24 Standard Objects ........................................... 26 document ....................................................... 26 Colors in the Document....................................... 26 Document Properties ........................................... 27 Pictures in a Document ....................................... 28 document.frames ........................................... 31 document.forms ............................................. 34 Text Entry Fields................................................. 35 Radio and Check buttons .................................... 35 Drop-Down Lists................................................. 35 Pizza Service ....................................................... 35 Euro Calculator.............................................. 38 Strings.............................................................. 39 The String Object........................................... 39 length .................................................................. 40 substring.............................................................. 40 toLowerCase ....................................................... 40 toUpperCase........................................................ 40 Moving Text .................................................. 40 User-Defined Objects ..................................... 41 Arrays ............................................................ 42 Working with Frames .................................... 42 Quiz.................................................................. 45 The Explorer................................................... 54 The Project..................................................... 54 The Practice ................................................... 54 The Main Page .................................................... 54 The Content Page................................................ 56 The Explorer Page .............................................. 56 Customization ................................................ 61 Reserved Words.............................................. 62 The Last Word…............................................ 62 Get Going with JavaScript 4 Introduction Everyone who is the least bit familiar with the Internet eventually wants to represent him or herself there with a home page. Anyone who wants to have a really cool home page must know a little more than the countless amateurs who are out there on the Internet. In my opinion the easiest and best tool for creating a truly attractive and interactive home page is called JavaScript. The beautiful thing about JavaScript is that the knowledge and system-related pre-requisites for learning the language are relatively low. You just need to know some HTML. And I’ll teach you the most crucial things in the first section of this booklet. If you’d like to delve deeper, I recommend the e-Ways book “Get Going with Web Pages”. Since JavaScript is platform-independent, it can be used on almost any Mac or PC. As far as software is concerned, you’ll need just an Internet browser (preferably Netscape Navigator or Microsoft Internet Explorer) and a simple ASCII text editor, for example, the one that comes with Windows. ASCII text consists of unformatted letters, that is, for every letter, you need to have one byte of hard disk space available. By contrast, Microsoft Word formats text with fonts, colors, etc. and it’s not really suited to serve as an ASCII text editor. Finally, here’s a hint for reading this booklet: everything typed in Courier is code. To test it on the computer, you’ll have to type it in. Get Going with JavaScript 5 The Basics This section will give you an overview of HTML and inform you about how to incorporate JavaScript into HTML pages. If you’re already familiar with HTML and you’ve already worked with JavaScript, you can skip right over this section. The Necessary Software As I’ve already mentioned, all you’ll need is a text editor and a browser. Text editors come with practically every operating system. Under Windows 95/98, the editor can be found by clicking Start/ Programs / Accessories / Notepad. You’ll find browsers that you can download for free over the Internet at the Netscape Website (www.netscape.com) and the Microsoft Website (www.microsoft.com). Given an average downloading speed and average online costs, however, it’s cheaper to buy a computer magazine that contains a CD. Many of these “silver disks” contain the latest versions of the browsers. HTML What are HTML Pages? HTML is a text-layout language, with help of which the most diverse systems can produce nearly identical results. This is due to the fact that the files in which the HTML code is saved, that is, files with the endings *.HTM or *.HTML, contain only ASCII text. The code in these files specifies, for example, which background color, which text color, which text and pictures in which order the page should contain. In order to make this topic more concrete, here’s a brief introduction to HTML. Brief HTML Reference Guide In a nutshell, HTML consists of so-called tags, which are always placed inside pointy brackets <>. These tags are, in turn, divided into those that cause a certain action (a line break, for example) and those that format the text (italics would be an example of this). The text formatting tags require a companion tag to the introductory tag at the end of the text you’d like formatted a particular way. A few practical examples will help you understand the functions of these tags: Here is a
    Pagebreak. This text will appear in italics. These HTML code fragments must be incorporated into the basic HTML structure. The complete code would look like this: The entire source code must be saved in an ASCII file. But the file extension must be either *.HTM or *.HTML, not *.TXT. Be careful: many text editors, especially Windows editors, save files whose names are given as *.HTM as *.HTM.TXT. In this case, you must change the Get Going with JavaScript 6 filename manually in the file manager or Windows Explorer. Now you need to start the browser, either Netscape or Microsoft Internet Explorer, and open the file you’ve just created. Usually, you do this by selecting File / Open, but this can differ according to which version of which browser you’re using. The page should look like this (this page was displayed with Netscape Navigator 4.7): Here are a couple more things useful to know – tags that begin with always indicate the end of text formatting and Ü is the international way of creating a Ü:

    This is a title that contains a word beginning with Ü

    Here is a
    Pagebreak. And here is a

    paragraph This text will appear in italics, this, by contrast, in boldface, and this text will be underlined. There is also a link and you can even include pictures. Before you can view the page, you’ll need to save a file with the name PICTURE.GIF. This file can contain any image you want. For example, you can create a picture using Paint under Windows 98. When saving the file, you need to make sure that it has the extension .GIF. Alternatively, you can go out and find a graphics file, a finished .GIF file, somewhere on the Internet. If you want the link to work, you’ll need to create another HTML file, which in our example, is called PAGE2.HTM. This name appears in the source code. And don’t forget to save your files! Get Going with JavaScript 7 The result should look like this when viewed with your browser: HTML offers you many other possibilities. But since this booklet is concerned primarily with JavaScript, I’ll just refer you to some appropriate literature: The e-Ways “Get Going with Web Pages” by Johann-Christian Hanke is excellent. Naturally there are also many more comprehensive books about HTML available in bookstores. HTML and JavaScript Before you begin programming, have a look at this general information about how to incorporate JavaScript into HTML pages. First off, you should know that JavaScript is a scripting language. That is, the code is not compiled (translated into machine language), but instead it appears as ASCII text in an HTML file. For integrating it into the HTML code, you have three possibilities: Incorporation in the Header The first possibility is to incorporate the source code into the header of the HTML file. Here you can write code that you’ll access later using one of the two other possibilities for incorporation. Get Going with JavaScript 8 JavaScript, to be hidden. Within these tags, you can define functions and variables, but we’ll get to that later. Carrying out Code Given Particular Actions The second possibility is to carry out JavaScript commands given a surfer’s particular actions. Such actions can include the loading or leaving of a page or the following of a link with the mouse. In the following example, the function hello is supposed to be carried out when the page is loaded. This must be defined in advance in the header of the HTML file (see above, incorporation in the header). The function could, for example, greet visitors to the site with a message on the screen. Incorporation in the Body In addition, you can incorporate JavaScript commands into a particular part of the page when you’re building the page. This is useful if, for example, you’d like JavaScript to incorporate supplements such as text directly into the HTML file. The following example is supposed to display the text “It is xx.xx O’Clock!”, replacing the letters with the actual time. The function write_time must be defined in the header. First JavaScript Programming All of the foregoing examples may seem very abstract to you; in the following, we’ll turn our attention to practical examples that will help you understand these things. Hello World Hello World without Parameters A program that is supposed to display the text “Hello World” on the screen in some way has emerged as a classic example when introducing a programming language. We want to define a function in JavaScript that will display this text as a message. Get Going with JavaScript 9 The following line, function hello(){, defines a function. function is a reserved word that must be in this position. hello, by contrast, is the name of the function, which you can choose as you like. The only thing you have to watch out for is that you don’t choose a reserved word as your function name – it’s best to give functions meaningful names. By the way – reserved words are words that can only be used in Java Code itself, not as function or variable names. On page 62 you’ll find a list of reserved words. Further in the code: () means that the function isn’t expecting any parameters, that is, it doesn’t need any values. Our next example will demonstrate the use of functions with parameters. { must follow ). The curly bracket specifies that the content of the function begins here. alert is the command for displaying something in the form of a message. It takes a text parameter, which must be placed in quotation marks. } marks the end of the function’s content. The body tag looks like this: onLoad "hello()">. This means that our function, again without parameters, should be called when the document is loaded. The whole thing should be saved as a normal HTML file and called up in the browser . The results look like this: Hello World with Parameters Now change the function as follows: What happens? The browser reads the body tag and encounters there the instruction to carry out the function hello with the text parameter Hello World with Parameters. The Get Going with JavaScript 10 parameter is a string – and so in the source code, it must be placed in single quotes. The function hello is called and the string given in our example is written to the variable result. A variable is a space in your computer’s memory that can contain numbers, text, etc. – more about this on page 18. Then the function is carried out; the browser finds the variable result as a parameter in the alert command and its value is written out as a message. In this example, using parameters doesn’t make much sense – but it’s important to understand how they work. What Time is it? In the two foregoing examples, a function was incorporated into the header and carried out when a particular action occurred – in the examples, that action was the loading of the page. In the following example, we’ll define another function, which is supposed to tell us the current time. In contrast to “Hello World,” however, this function will be incorporated into the body since the current time is supposed to appear in the middle of the text on the page. To understand this program, several explanations are necessary: Get Going with JavaScript 11 With the first command in the function all of the data concerning the current date and time are written to the object time. Instead of time, you can use any other name, but make sure that it’s one that will be meaningful to you, the program’s author. The time and date are now saved in time. Everything that’s inside the parentheses after document.write will be written directly into the HTML document. In our case, this means the hour and the minutes (time.getMinutes). The hour and minutes are read from the object time using the commands issued. Then, the individual elements are connected using the plus sign (+). The function will then be carried out within the document so that the current time will be written directly into the text. You can already see results – even such simple programs will set your Web site apart from others: Page Reference Before I explain the individual elements of JavaScript, here’s a last practical example. At the bottom of the browser window, you’ll find the status line. If you pass the mouse cursor over a link – without clicking – you’ll see the file and pathname to which the link will take you. Get Going with JavaScript 12 The effect of the change is that if you pass over the link with the mouse (onMouseOver), you’ll see a description of the target reference in the status line, which disappears again if you move the mouse away from the link. Event Handler Event handler reminds you of the “Hello World” program? Earlier, I mentioned that the function hello was carried out given particular actions. To accomplish this, you needed the onLoad command. Commands of this kind – that is, commands that are incorporated into the HTML source code and that carry out a predefined function or command given particular actions – are called event handlers. All event handlers begin with on.... The onLoad event handler used in our example means essentially “upon loading.” Just after the event handler you’ll notice an equals sign, then the JavaScript commands to be executed in quotation marks. Now we’ll have a look at the most important event handlers. onLoad You’ve already met this event handler in the “Hello World” program in the foregoing section. It is activated when an HTML page loads. onUnload …is the opposite of the event handler onLoad and is activated when an HTML page closes. The following example is a transformation of the “Hello World” program. When leaving the page, it displays the message “Goodbye.” This could, for example, happen when a link is activated. If the link in our example is to function properly, you must create one further HTML page, called here page2.htm. Get Going with JavaScript 13 The result should look like this in your browser as soon as you’ve left the page: onMouseOver The event handler onMouseOver is probably the most-used event handler. It is used within the reference tag and becomes active if you touch the reference area with the mouse. An example of how this event handler is used is the page reference example in the previous section. onMouseOut onMouseOut is the opposite of onMouseOver. If you display text in the status line because you’ve used an onMouseOver event handler, you’ll need to remove the text as soon as the mouse leaves the link area. The event handler onMouseOut was also used in the page reference example in the previous section. onFocus Now you’ll meet a group of event handlers that are used in forms. The HTML code for forms is practically self-explanatory – if you want to know more about this topic, I would encourage you to immerse yourself in the appropriate HTML literature. onFocus means “when the cursor is placed on this element.” This event handler is placed in one- and multiple-line entry fields as well as in drop-down lists, for example, in order to check zip codes that the user has entered for typos or extra digits. In our example, we assume that the surfer is dumb and tell them in the status line that they have to place the cursor on one of the three form elements. In this case, the function message is called up with a text parameter. This function displays the parameter that it has been given in the status line, so it functions as the page reference program does. Get Going with JavaScript 14 If the user places the cursor in the field of their choice, the following message will appear: onBlur onBlur is the opposite of onFocus. This event handler is used with exactly the same elements, namely one- and multiple-line text fields and drop-down lists. It becomes active if the focus is removed from the element, for example, as soon as the mouse is clicked on another element. Its use is parallel to that of onFocus. In the interest of holding source code to a minimum, we’ll just show the changes to the last program: The line window. All three onFocus event handlers must be changed to onBlur commands. In the browser, the whole thing should now look like this: Get Going with JavaScript 15 onChange This event handler is used much like onBlur; it’s activated as soon as the user leaves an entry field – provided that the field’s value has changed. In drop-down lists, it’s activated solely by the changing of the value. Because of the similarity between the onChange and onBlur event handlers, a transformation of the onBlur program will serve as an example: All three onBlur statements must be replaced by onChange ones and “left” in the message must be changed to “changed.” If you save the source code and display it in your browser after making the changes and leaving the multiple-line text field, the whole thing should look like this: onClick The onClick event handler is activated by a click on a form element. This can mean a radio or check button, but also submit, reset, or a user-defined button. In our example, if you click on a form element, a message should appear that tells you which element you clicked. Get Going with JavaScript 16 The result in the browser, if you click the radio button Option 2, looks like this: javascript You can even use the onClick event handler in references, But since such links usually carry out just one JavaScript command and don’t take you to another page, there is a different event handler for references, which really isn’t one at all since it doesn’t begin with on...; it begins with javascript. The following exemplary source code can be incorporated into the foregoing example, just in front of If you click the reference in the browser, you’ll see the following result: Get Going with JavaScript 17 onSubmit This event handler takes care of the submission of a form. Therefore, it has the same function as onClick on the Send button. In our example, in the line you could delete the onClick event handler so that the line looks like this: But then you would have to make the following addition to the form tag: The result would be the same. Now you’re familiar with the most important event handlers. There are many others that will not be described in this booklet since they are beyond its scope. Functions An event handler carries out a function as soon as it’s activated. This can be a predefined function. For example, the issuing of a message can be incorporated into the body tag: The drawback to these predefined functions is that they can only each carry out one action. If you want to execute multiple JavaScript commands when an event handler is activated, you must define your own function. This happens, as we’ve already seen several times, in the header of the HTML file. As an example, let’s look at the “Hello World” program again (this time we’ll look at the whole header): Get Going with JavaScript 18 The keyword function always introduces a function. After a blank space comes the function’s name – in our example hello – which must conform to the naming conventions of JavaScript with respect to reserved words. For more information on naming conventions, see page 62. Then comes a parenthesis (. Now you must decide whether the function will take one or more parameters or whether it – as in our example – should use the resulting text or another value. If there are no parameters, you must still place a closing parenthesis ) immediately next to the opening one. If, by contrast, you want to use parameters, these will be stored in variables whose names you must indicate here. When choosing variable names, you should be aware of the same issues as when choosing function names. If you’re using more than one parameter, separate them with commas. In such a case, the first line of our function would look like this: The entire contents of the function, that is, all commands that the function should carry out, must be placed in curly brackets . The function has now been defined. In our example, the function will be called as follows: The function call is constructed like its definition, but instead of the variable name, the values for these variables are given – in our example 'Hello World with Parameters'. You have to watch that the text parameters are placed in quotations. Single and double quotations are handled the same way. Expressions must also be placed in the same quotation marks. If you’re nesting expressions, you must use different kinds of quotation marks. In the function call, the curly brackets disappear. Variables A variable is a space in your computer’s memory that is reserved for a program – in our case for your JavaScript application. This place in memory can hold a number or text, but under no circumstance can a variable switch between these two types of information. One variable cannot first hold a number and then later text, or vice versa. We’ve already worked with variables numerous times. Here’s how we used them in functions as parameters, as in the “Hello World” program: Here, a variable with the name result is declared. The parameter, which is passed to the function when it’s called, determines in this case whether the variable in question is a text or numeric variable. Local Variables A variable like result in the foregoing example is local. This means that it only exists in the function hello, not in other functions that may be declared later. If you’d just like to reserve a space in memory in which a value or some text can be stored, something you’d like to read out later, then you should declare a variable that’s not a parameter. Here’s another option: This function works entirely without parameters. During testing, you’ll need to take the Get Going with JavaScript 19 parameter out of the function call. The function declares the variable result, assigns it the text Here I am! and displays that text. One characteristic of JavaScript is that variables can be assigned values right when they’re declared. In the following example you’ll see how numbers can be the contents of variables too. Here, a variable eggs is declared, which is assigned the value 5. After that, the text Today I bought 5 eggs. is displayed, which makes use of the variable. Global Variables All uses of variables that you’ve seen so far have the disadvantage that they can only be used in the one function in which they were declared. Let’s pose the following practical problem for ourselves: an HTML page is supposed to contain three buttons. Users should click the first button if they are using a PC, and the second one if they are using a Mac. A click on the third button is supposed to produce a message that tells the user which kind of computer they are using. From the programmer’s point of view, this means that if the user clicks the first button, the text “PC” should be stored. If the user clicks the second button, “Mac” should be stored. If the user clicks the third button, the browser should display an appropriate message. In the header, the global variable computer is declared, which is assigned the value unknown. The user clicks a button. The kind of computer will be written to the variable. When the user clicks the third button, an appropriate message will be displayed. The result looks like this: Get Going with JavaScript 20 Mathematical Operations In addition to variables and functions, mathematical operations are another basic element of JavaScript programming. But this isn’t complicated at all. Here I’ll just explain the basic kinds of calculation and a few peculiarities. If you want to carry out a calculation, you’ll need a variable to which you can write the result – here we’ll call this variable result – and in most cases you’ll also need two variables that should be added together (here: a and b). All operations can use whole numbers and decimal remainders. There’s just a point to remember about decimals: Addition: result = a + b Subtraction: result = a - b Multiplication: result = a * b Division: result = a / b Whole number rounding: a = Math.round(b) There are also operations that require the use of just one variable: addition of 1 to a variable (this is functionally equivalent to result Subtraction of 1 from a variable (this is functionally equivalent to result Anyone can see how these operations work. But nevertheless, I’m going to provide a practical example so that you can test other kinds of calculations than the multiplication shown in the source code. This program is supposed to display the number of seconds in a year. Naturally we don’t just want to plop the number into the HTML file; rather, we’d like to give the number of days in the year, times the number of hours in a day, times the number of minutes in an hour, times the number of seconds in a minute. We’ll display this result. Get Going with JavaScript 21 The result will look like this in your browser: Given such a simple example, one could, of course, just output the sentence “A year has 3156000 seconds!” in the HTML file. Later on, we’ll see examples that are calculated using values input by the user of the page. Repeated Performance In every programming language, there are times where you’ll want to repeat the same command over and over. The commands for repeated performance are the same in nearly every language: they are called for and while. Here you’ll see examples of each command. Looping with for Let’s assume that you want to publish a table of squared numbers from 1 to 100. Now you could, of course, calculate all the values with your pocket calculater and then enter them into a table, or you could call on JavaScript to help you. The command for . Since we haven’t defined any counter variables yet, var i comes next. If the variable had already been declared, then you’d just need i here. With =1, this variable is given its starting 22 value, then comes a semicolon. In most cases, the counter variable should, as in the foregoing example, be incremented by one each time the loop runs – this is what i++ is for. The curly bracket marks the beginning of the loop. Then come the commands that should be repeated. Here the first command opens a table line and a table cell. Then the counter variable is written to the table, the cell is closed, and a new one is opened. The square of the counter variable is written to the table, and finally the table cell and line are closed. The curly bracket marks the end of the loop. This function does the following: for all numbers from 1 to 100, it creates a line. In the first column, it writes the number; in the second column, it writes the number’s square. Naturally then you have to open a table in the HTML file. Get Going with JavaScript 23 In the browser, this example should look as follows – remember that the loading of the table can take some time on older computers due to its size: Looping with while The while loop closely resembles the for loop. But the while loop doesn’t require any counter variables and there’s no operation that changes the value of these counter variables. The for loop will simply run until the given condition is false. Its beginning is nearly identical to that of the for loop – it is used when you already have a counter variable with a value since no fixed value is given to the counter variable at the beginning of the loop. As an example, let’s use the squaring program again. This time, the function will look like this: function square At the beginning of the function, the value of the counter variable is set to 45. Later on, this initial value can be read off of a form, for example. In the parentheses of the while command comes the condition that must be fulfilled for the loop to end. Since otherwise the value of the counter variables would remain constant, it must be changed in the while loop. This is what the command does. The whole source code looks as follows – the result in the browser resembles that in the last example, but the list begins with 45: Get Going with JavaScript 24 When using for and while loops, it’s important that the programmer look out for so-called endless loops. These can occur if the value of the counter variable never changes, if it’s set equal to the beginning value by a mathematical operation, or if it’s set to a fixed value within the loop. Such endless loops can only be exited by “strong-arming” your computer; try Ctrl + Alt + Del on the PC or Command + Alt + Esc on the Mac if your browser stops reacting. Sometimes, you’ll even need to reboot your computer in order to restart your browser. This shows that you need to be really careful when programming loops, for if the browser crashes when you’re looking at your site online, then you’ll be a sad surfer for a while. Conditional Operations A further important element of JavaScript is conditional operation, the if command. In the course of this booklet you’ll see that if is one of the most-used commands. The following example should illustrate this. Depending on the time of day, a surfer on your Web site should be greeted differently – at 7:00 PM, for example, the message should be “good evening.” Get Going with JavaScript 25 The first two lines of the function store the number representing the current time in the variable hours. This functions exactly as in the “What time is it?” example at the beginning of this booklet. Next, a variable hello with the greeting “Hello, Nightowl!” is declared. Next come the if statements. The introductory if is mandatory. After that, in parentheses, come the conditions upon fulfillment of which the commands in the if section will be carried out. In our example, this greeting should be issued if it’s 6:00 PM or later. The curly bracket marks the beginning of the commands in the if section. In the next line, the greeting is set to “Good Morning!” and the curly bracket ends the if command. What happens now? First, the greeting is set to “Hello, Nightowl!” If it’s 6:00 AM or later, the greeting is set to “Good Morning!” If it’s already after 1:00 PM then it’s set to “Good Day!,” etc. Finally the greeting is displayed. Since I’ve worked through the whole night yet again, I’ll be greeted as follows by the browser: Get Going with JavaScript 26 This program can be taken over as-is into a Web site. It’s not especially resource-intensive, that is, it won’t disturb animations, but it makes an individualized impression. Standard Objects An object is a collection of functions and variables. Standard objects are predefined in JavaScript. The already familiar document.write("Bla bla") command is, for example, a function of the object document. The command alert("Bla bla") is a function of the window object, since it’s really an abbreviation for window.alert("Bla bla"). Yet unfamiliar is document.bgColor, which is a variable of the document object. The function of a variable of a standard object is always designated by the name of the object, a dot, and the name of the function or variable. There are a multitude of standard objects; they are far too numerous to discuss here. Therefore, we’ll discuss just the most important ones. document In the document object, you’ll find all functions and variables that have to do with HTML documents. But since this object too contains more functions and variables than we can discuss here, we’ll limit ourselves in the following to the most important ones: Colors in the Document Using JavaScript, you can access the color settings of HTML documents. Elements you can change include the text color, background color, and the colors of not yet visited, already visited, and active links. Unfortunately, access to these colors is not always reliable in all browser versions. Netscape in particular leaves something to be desired. In the following practical example, the various colors are supposed to be changed with a click of the mouse. If you’re using Netscape, only the background color will change – but Microsoft Internet Explorer isn’t always reliable either. In practice, you should only use the color-manipulation capabilities of JavaScript to change the background color. Get Going with JavaScript 27 This is normal Text. Before you click on the “Color change” link, the whole thing should look like this if you’re using Netscape: Because Microsoft Internet Explorer in my opinion functions a bit better, what I’m showing you here is the result after clicking on “Color change” in this browser: Document Properties There are three text constants in an HTML file that can only be read out by JavaScript but not changed. These are the URL of the file, the address from which the current file is read Get Going with JavaScript 28 (document.referrer), the URL address of the file itself (document.location), and the title of the current document (document.title). The following example issues a message upon loading, which contains these three constants: In the browser, the message will appear as follows: This application doesn’t appear very useful at first glance – but scripts of this kind can be useful if, for example, on your Web site you’d like to determine whether the user is coming from another site or your own. Pictures in a Document If you surf regularly on the Internet, you’ve probably noticed a much-loved feature: links in the form of pictures that change their color or something when you pass over them with the mouse. The secret to the color change is that the picture behind which the link lies is replaced by another picture. The standard object document is responsible for administering these pictures. For each pictures that you’d like to have produce this effect, you have to create a name in the HTML source code. This could go like this: Get Going with JavaScript 29 Here you’ve created the variable document.picture.src, which is assigned the graphic picture.gif. Now you need to create a second picture of the same size, which should replace the first picture upon mouse contact. The value of document.picture.src can be changed, whereupon the picture will be switched. You could proceed quite simply and assign it another picture file, This might work on your PC at home – but common practice on the World Wide Web suggests that this is problematic: the browser will only produce the second picture if the first picture is touched with the mouse. But clever programmers have found a solution to this problem: upon loading the document, a new picture is generated that isn’t displayed in the browser. You can do this with the following code: To retain the original picture in memory, treat it exactly the same way. Several explanations of the source code are necessary here. Upon loading the page, the global JavaScript source code is carried out. It loads the picture data from picture1.gif and picture2.gif as described above. Upon contact with the mouse (onMouseOver), the second picture is displayed, upon leaving (onMouseOut), the first one appears again. The whole thing looks like this in the browser if the mouse is not touching the link: Get Going with JavaScript 30 If you pass the mouse over the picture, you’ll see the following: This application can also be taken over as-is into Web sites. If you want to place several changing pictures on a page, you must, of course, choose different names for each picture. On the other hand, as in the following example, a picture can appear in more than one place. An arrow is supposed to show over which link on a list the mouse is at the moment. To accomplish this, you’ll need a table with two columns and, in our case, three lines. In the right-hand cells, you’ll find pictures that have various names and to which, at first anyway, the same picture file is assigned. In the left-hand cells, you’ll create links, which, when there is contact with the mouse, will change the picture as in the foregoing example. This time, however, a picture should be changed behind which there isn’t any link. For this purpose you’ll just need to replace the picture name of another picture – in our example, the name of the picture that’s in the neighboring cell. So that you’ll understand this procedure, I’ll show you the two pictures active.gif and inactive.gif, which must be the same size. Get Going with JavaScript 31 The principle is the same as in the previous example, where I explained how this works. Here you can see what Netscape makes out of this: document.frames document.frames is really an object of the object document, but since it can be used independent of it, it will be covered in a separate section. The object document.frames is used almost exclusively to change several frames with one click of the mouse. Let’s take a look at a practical example: Our goal here is to create a frameset that will divide the screen vertically into two pieces. The right piece will then be divided again. The left frame should display a table of contents in Get Going with JavaScript 32 which various animal names can be clicked. If, for example, the user clicks on “elephant,” the lower right corner of the frame should display information about elephants. If, by contrast, the user clicks on “crocodile,” then the frame should display “reptiles” and “crocodile.” To carry out this project, first we’ll need a frameset that we’ll call animalinfo.htm: which needs no title since it’s displayed on the frame Then you’ll need to create three files, which are only a little bit different than kindofanimal.htm: mammals.htm, reptiles.htm, and fish.htm. Here you should replace the text Kind of Animal with mammals, reptiles, or fish, respectively. In addition you’ll need some “animal files.” To create these, just modify the file startanimal.htm. Replace the text with information about an animal and name the file after the animal in question. I’ve created mouse.htm, elephant.htm, crocodile.htm, lizard.htm, greatwhiteshark.htm und goldfish.htm And now to the file contents.htm, which contains the JavaScript code: In this file, you’ll find links that reference JavaScript functions. We’ve already seen this – the references look like this: In the JavaScript portion of the file, the following functions must be declared: Get Going with JavaScript 33 The explanation: the frameset is constructed like a tree. The main file – in our case animalinfo.htm – is the trunk of the tree, the frames are the branches. In order to reach one branch from another, you have to climb up the tree trunk. In JavaScript: to change from one frame to another, you have to use the main file. The reference link parent is responsible for this. To “branch off” to another frame, you have to give its index. When you declare a frameset, the browser begins counting at 0, so that the left-hand frame in our example is assigned the index 0, the frame for the kind of animal the index 1, and the lower right-hand frame the index 2. In our case, then, frame 1 and frame 2 must be changed. You can access the filenames using location.href. In the function, therefore, the two right-hand frames are assigned different file names at the same time; the file names are passed to the parameters file1 and file2. Upon loading the file animalinfo.htm into the browser, you should see this: Get Going with JavaScript 34 If you click the mouse on “Mouse,” you should see the following picture: document.forms Like frames, each form that’s a part of an HTML file gets an index. Again, the browser starts counting with 0; as a rule, only one form with the index 0 is present. The object forms has several properties: document.forms[0].length, for example, returns the number of entry fields on the form with index 0. But this object is hardly used. More important is a “secondary object” of document.forms, namely document.forms[0].elements, where elements is Get Going with JavaScript 35 replaced with the name of an element. With the help of this object, it’s possible to read out the entry fields on a form and overwrite them. This requires some theoretical knowledge, specifically with respect to how the various element types are addressed with different references. All elements in HTML source code are given names – in the following example, Elementname stands for the actual element names. Text Entry Fields The following property can read out or overwrite the current text in an entry field: This next property can read out or place default text in an entry field: The following function marks the text in an entry field: And the following function, which places the cursor in a field, is defined for all entry fields, but used almost exclusively for text entry fields: Radio and Check buttons This property reads out or writes whether a radio button has been selected. The index of the radio button is indicated here with n – as always, the browser always begins counting with 0. Possible values for this property are 0 (not selected), 1 (selected), or, if you prefer, false (not selected) and true (selected). With this property you can read out and write the default setting of a radio button (index and possible values as above): Check buttons have the same properties; here n is the index of an element if there are several elements with the same name parameter present in a group. Drop-Down Lists Drop-down lists have a property with help of which you can read out or write whether an option is selected (index and possible values as above): Pizza Service The following example is intended to explain the function of the document.forms object. Here, we’re concerned with ordering a pizza that can have various characteristics (size, toppings). Upon submitting the form, a message is generated that tells the hungry person what kind of pizza he or she has just ordered. Get Going with JavaScript 36 Get Going with JavaScript 37 The HTML portion of the document consists of a normal entry form, whose fields contain names. In the

    tag there’s an e-mail address to which the completed form will be sent – I’d ask you kindly to change the address, lest my translator find the pizza wishes of all my readers in her e-mailbox. The form uses the event handler onSubmit in conjunction with the function confirmation, which is called when the form is submitted. In the function, a variable with the contents Dear is declared. This variable is eventually expanded to include a result sentence. As described above, the name is added, then the text “, You have ordered a”. Depending on what the user inputs, the size, toppings, and packaging of the pizza are filled in as indicated. The whole variable, which now contains a result sentence, is displayed as a message using the alert command. This pizza order looks as follows if you’re using Netscape: You can expand the pizza entry form to include more toppings and packaging options if you’d like to understand the document.form object better. You can also add a further entry field for the recipient’s address, which can be output in the message. You can even add two radio buttons for normal/express delivery. Get Going with JavaScript 38 Euro Calculator In connection with the form object, here’s another good example of how you can use JavaScript to write to text entry fields. Let’s build a Euro calculator, which will convert all currencies of the Euro countries into Euros and vice versa. Here, without further ado, is the source code. The JavaScript function calculate is left out, but must be added later. In the HTML file, a form is created that has two text fields, one for the amount in Euros and one for the other currency, a field for calculating, and a selection field – we’ll get to the onChange commands in a moment. The selection field contains all currencies that can be converted into Euros. The fixed conversion rates are the values for value. When you click the Calculate button or change currencies, reference is made to a JavaScript function that we’ll call calculate. Its purpose is to convert the amount that was changed last – be it Euro or other currency. Now the meaning of the a variable should become clear: each Get Going with JavaScript 39 time that the text entry field is changed, the value of this variable changes too. If the Euro value is changed, it is set to 1; otherwise, it is set to 0. The function needs this variable to know which value was changed last, and thus, which value should be converted. How it works: if a has a value of 0, then the Euro entry field is used. Math.round rounds a number to the nearest whole number. The value in the first text entry field is rounded, divided by the value value of the text entry field option that’s currently selected (which corresponds to the conversion rate), and multiplied by 100. Finally, the whole thing is divided by 100. The multiplication by 100, which is rounded and then divided again by 100, is necessary to produce a result with two decimal places. If a=1, then the Euro entry is multiplied by the conversion rate – this part of the function works analogously. An example in the browser shows how many German marks 9.98 Euros are: Strings In computer language, a string is a series of characters. In JavaScript there are a few useful commands with help of which you can change stored strings or read the strings out in changed form. The String Object Here I’ll introduce you to the most important of the commands that belong to the string object: Get Going with JavaScript 40 length This property is used to read out the number of characters in a string. xy.length has as its value the number of characters in the variable xy. For example, if this string contains the text “Count my numbers!”, then the value is 17. substring This function returns a portion of a string. If you would like to write the first 10 characters in the string xy into a variable z, for example, then the command would be z=xy.substring(0,9), because the computer begins counting with 0. toLowerCase This method changes all the letters in a string into lower case. If, for example, the text “I am HERE!” is stored in the variable xy, you would need to issue the following command to transform the string into “i am here!”: xy=xy.toLowerCase toUpperCase This function operates analagously, except that it changes lower-case letters into upper-case ones. If you’d like to store the contents of the variable xy in the variable z in upper-case letters, then you’d need to issue the following command: z=xy.toUpperCase Moving Text Surely you’ve been asking yourself what all of these string functions are good for. An example would be the following program, which displays moving text in the status line. Get Going with JavaScript 41 And here’s how the program works: a global variable text is declared, to which the moving text, which will appear later, is assigned. In addition, another variable is declared, which we’ve called result and whose value is initially set to start. When the document is loaded, the function movingtext is called up by the onLoad reference in the body tag. Here it is established whether result contains the string start. This is the case the first time the function is called, so the following loop will run 140 times. 140 empty spaces are set in front of our original text. The text is always displayed left-aligned in the status line. To make it move to the right, the text must be preceded by leading empty spaces, which are gradually taken away. The most convenient number of empty spaces depends on the resolution of the user’s screen – you’ll probably need to find an appropriate compromise. The variable result is assigned the string stored in the variable text. From here on, the variable text is not changed, since, thanks to the changed value of result, the if statement is omitted in later function calls. The first character of the variable result is deleted – or actually it is overwritten with the second through last characters in the string. Now the result is written to the status line. If all the characters have already been deleted, then result is devoid of content and is set back to its starting value, which is still stored in text, by means of an if statement. The command setTimeout("movingtext()",150) is still unfamiliar to you – it informs the browser that the function movingtext should be called again after 150 milliseconds. After this, the function ends. 150 milliseconds later, it is started by the browser again, the result is truncated by one character, and the whole process is repeated until the result is empty, whereupon result is set back to its original value. And so the little game repeats itself over and over until another HTML page is loaded. In the browser, the whole thing looks like this: This effect should not be built into sites that strive to make a serious impression – in that kind of context, this effect is shunned. On private or entertainment-related pages, however, it works quite well for news or the “joke of the day.” User-Defined Objects The goal of this section is best attained through presentation of a concrete example. The names and ages of several colleagues in a particular firm should be stored in variables. To do this, you can either declare lots of variables (smith-name, smith-age, jones-name, jones-age, etc.) or you can create objects. Get Going with JavaScript 42 With the command var smith=new colleague("Michael Smith",43), the function is called – a new object is created and the name and age are assigned. After this, you can reference the name with smith.name and the age with smith.age. In addition, you can declare your own objects with the following command: smith=new Object Then you can freely assign properties, Arrays An array is a series of variables of the same type, which are referenced with the same name and an index. The following command declares a new array – new can be replaced with another name (see reserved words on page 62). new = new Array Here, you are declaring a whole series of variables, They must all be of the same type, that is, new[1] can’t be a number if new[2] is a string. You’ll find an example of the application of user-defined objects and arrays later on in the “Quiz” section. Working with Frames All of the foregoing examples, save for the animal information program, restrict themselves almost entirely to one HTML page. In more complex applications, however, variables often need to be made available across several HTML pages. Normally, server-side scripts are required for this, but you’ll find that server-side scripts aren’t allowed by many large providers like AOL. If you’re clever, though, you’ll be able to accomplish many of the same tasks with JavaScript. This requires working with frames. The main file, which isn’t even visible since it contains only references to subfiles, contains the relevant variables. The individual frames can be changed, but the variables in the main file remain. This may sound rather abstract, so here’s a brief example: The main file called FRAMES.HTM divides the browser window horizontally into two portions; in the JavaScript portion, a global variable name is declared: Get Going with JavaScript 43 The file contains a form for entering a name and a “Continue” button. If the button is clicked, the function continue is called. It supplies the variable in the next frame, that is, in FRAMES.HTM, with the contents of the entry field. Here’s a brief overview: parent. branches off to the next frame up. top. branches off to the highest frame in the browser. frames[n]. branches off to the next level down in the frame with index n (see also the animal information program). With document.location.href, the address of the page to be displayed is given. In our case, this is the HTML file PAGE2.HTM. Get Going with JavaScript 44 The user’s name that is saved in the frameset is displayed. Thus we have accomplished the task of giving a variable a value in one HTML file and reading it out in another one. And this even works – the browser produces the following: Quiz Get Going with JavaScript 45 Quiz Now I’d like to show you a longer exemplary application, which will make use of most of the contents of the foregoing sections. We’re going to make a quiz game where the surfer has to drive through a labyrinth with a car. There is a start field and a destination field; in between lay several event fields. If the car crosses an event field, a question is posed, which, if answered correctly, will earn the player 100 points. If the player answers the question incorrectly, 40 points will be deducted from their score. In addition, 25 points are deducted for gasoline for each move the player makes. START.GIF HORIZ.GIF (for horizontal) HORIZ.GIF (for horizontal) HORIZ.GIF (for horizontal) RT.GIF (for right top) DEST.GIF (for destination) EMPTY.GIF (empty field) LT.GIF (for left top) HORIZ.GIF (for horizontal) RB.GIF (for right bottom) LB.GIF (for left bottom) RT.GIF (for right top) RBR.GIF (for right branch) HORIZ.GIF (for horizontal) RT.GIF (for right top) EMPTY.GIF (empty field) VERT.GIF (for vertical) LB.GIF (for left bottom) HORIZ.GIF (for horizontal) LBR.GIF (for left branch) EMPTY.GIF (empty field) LB.GIF (for left bottom) HORIZ.GIF (for horizontal) HORIZ.GIF (for horizontal) RB.GIF (for right bottom) For all files, with the exception of EMPTY.GIF, you must also create a version with a car. When you’re doing this, add an M in front of the file name. For example, in addition to LB.GIF, there should be MLB.GIF: Get Going with JavaScript 46 Quiz The game should consist of a frameset. On the left side, you’ll see the labyrinth; at the top right, the steering wheel of the car alternating with the questions; at the bottom right, the player’s point total. Here is the frameset file, which is called LABYRINTH.HTM: Get Going with JavaScript 47 This file is long, but it’s easy to understand. At the beginning, all the variables are declared, since the main file never changes and the variables are therefore kept for the duration of the game. points is supposed to keep track of the player’s score and is assigned an initial value of 0. x and y specify the horizontal and vertical position of the car, which is started in the position 1/1. The variable answered counts the questions already answered. We’ll see later what this is good for. It too is assigned an initial value of 0. The variable afield is declared as an array, while the variables afield[1] through afield[5] are designated as data fields using the for loop. There are, therefore, five arrays, each of which covers one line of the playing field. Next, the arrays are assigned their corresponding picture files without the extension .GIF. For example, the position 1/2 is the destination, hence the line afield[1][2]=”destination”. After this, the array question is created – I’m using 40 questions. question[1] through question[40] are declared as objects using a for loop (see the section on “User-Defined Objects” on page 41). The property asked is initially set to false, which means that the question hasn’t been asked yet. Next, the properties of all questions are determined. For reasons of space, I haven’t shown you questions 5 to 40. text is the question itself, answer1, answer2, and answer3 are the possible answers, and answer contains the index of the correct answer (for example, if answer1 contains the correct answer). Of course you must think up questions 5 to 40 yourself and set their properties analogously. Get Going with JavaScript 48 Quiz The next step is to create the simplest of the three frame files, POINTS.HTM. It outputs the value of the variable points for the frameset. Get Going with JavaScript Quiz 49 In the body of the HTML file, a table is opened, then the function Function print_laby is called. Finally the table is closed again. The function consists mainly of two for loops. The first one, with the counter variable i, counts the rows; the second one, with the counter variable j, counts the columns. At the beginning of each iteration of the first loop, a column is opened with document.write. After that, a cell with a picture is opened five times. Using an if statement, the program checks to see whether the counter variables match the coordinates of the car – if so, then an m is added to the HTML file name for the changed graphic. Next, parent.afield[j][i] writes the file name of the corresponding picture, which is completed with the file extension .gif and the cell is closed. The most complicated file is STEERING.HTM: In the body, after some spaces intended to create a vertical-centering effect, a table is opened. This time the function print_steering is called and then the table is closed again. In order to understand this function, I’ll show you how the steering is constructed, namely with a table: print_steering first issues the HTML commands for the empty cell in the upper left, then a cell is opened. The file name of the picture in the car’s current position is read out of Get Going with JavaScript Quiz 51 parent.afield[parent.x][parent.y] into the variable f. Using if statements, the program checks to see whether the car is on a field from which it is allowed to drive upwards. || means “or” – you must draw two vertical lines, which you can create using SHIFT+\ (hold the SHIFT key down, then press the backslash key) on your keyboard. If the car is allowed to drive upwards, a reference that points to the function go(0,-1) displays the red arrow pointing upwards. If the car is not allowed to drive upwards (else = otherwise, in conjunction with if), then since there is no reference, the gray graphic is displayed. The function go will be described below; the first parameter determines the x movement (given vertical motion, this value is 0), the second parameter determines the y movement (-1 since the car is moving upwards). The table is completed analogously; in the middle, the graphic STEERING.GIF is displayed. The function go deducts 25 points from the player’s score for gasoline. Then the file LABY.HTM is displayed in the left frame – but since the coordinates have changed, the car will be put in a new position. Finally, the program checks to see whether the car is on a horizontal field, that is, a question field. If so, the file questions.htm is displayed in the upper right frame. If, by contrast, the car is on the destination field, then the file destination.htm is displayed in this frame. Otherwise, the file steering.htm is updated, since eventually other arrows must be displayed. Last but not least, the user’s score is updated. questions.htm is a much less complicated file: Get Going with JavaScript 52 Quiz This time, the function question() is called in the body. Next, the program checks to see whether the number of questions that the player has already answered equals the number of existing questions. If that’s the case, then the player is informed of this and the file STEERING.HTM is referenced. Using a=Math.round(Math.random()*39)+1, a random number between 1 and 40 is selected. Math.random() selects a random decimal part between 0 and 1, while Math.random()*39 selects a random number between 0 and 39. Math.round rounds the result to a whole number. In order to get a number between 1 and 40, you must add 1. These actions will be repeated in the while loop until the program finds a question that it has not yet posed. The number of the already-posed questions is increased by 1 and the property asked for the corresponding question is set to true. Next, the text of the question, followed by a blank line, is displayed. Finally, the three possible answers are displayed as links, which reference the function answer with the parameters a (index of the quetsion) and the number of the selected answer. The function answer checks to see whether the selected answer corresponds to the correct answer. If so, then a message is displayed and 100 points are added to the player’s score; if not, then a message is displayed and 40 points are deducted from the player’s score. Finally, in the upper right frame, the steering wheel is displayed and the player’s score is updated in the lower right frame. The last file that you’ll need is called DESTINATION.HTM: This file shows the successful player how many points they had at the destination and offers them the opportunity to play again. Here’s a picture of the browser during the game: Get Going with JavaScript 54 The Explorer The Explorer The Project After the quiz game, which is an application for the entertainment of the surfer, I’d like to present a serious application at the end of this booklet. It should solve a problem common to Web sites with a large number of pages; it becomes impossible to get an overview of what is where. Our goal is to create buttons with names like “Continue” or “Back,” since after you have clicked back and forth on a site a few times, you’ve probably lost the overview completely. Often frames are used to solve this problem: on the left-hand side of the browser window, a frame displays links to various pages, while the right-hand frame displays the page that’s been selected. Frames work pretty well -- as long as the number of pages remains in the realm of one or low two digits. If there are too many pages on a site, however, you can help clear up the confusion in another way. To do this, you’ll also use two frames: the right-hand frame will again show the contents of the page you’ve selected, but the left-hand frame will display a tree structure like the Windows Explorer does. By opening and closing folders, you’ll see only the pages relevant to your direct calls. To give you a better picture of the project, here’s a screen shot of the finished page. The Practice Since a full-blown practical example would require many, many directories and files, here I’ll just show you the basic structure of an Explorer system. To customize this project for your Web site, see the section entitled “Customization” below. The Main Page The main page is, in principle, a completely normal frame page, but it must contain a JavaScript portion. This is explained below. Get Going with JavaScript The Explorer 55 The workings of the function init_ex were described in the section “User-Defined Objects.” If you don’t remember that section anymore, don’t worry; the following sections will make the workings of this function clear to you all over again. The line var ex=new Array creates a data field. The variables ex[1], ex[2], ex[3], etc. are defined all at one time. Each ex[x] is supposed to be responsible for a line in the Explorer, although not all the lines must be displayed at once. A line contains several pieces of information: is the line a folder or a file? If the line is a folder, is it open? If the line is a file, what address has been assigned to it? Which text should be displayed in the line in the Explorer? All of this information is written into the variable ex[x] using the function i Now you’ll need some explanation of the arguments: The first argument, “level,” determines how far from the main directory the folder or file in question is located. The main folder, that is, “Big Band,” is the only line on level 0. Folders and files that are located directly underneath it, for example, “Winds,” are on level 1. Files and folders below this are on level 2, etc. If a line is concerned with a folder, the next argument is relevant; it determines whether the folder is open (true) or closed (false) by default. For files, this argument is meaningless, but it must still be set to true or false so that the function is passed the right number of parameters. The next argument determines the text that the Explorer will display on the corresponding line. This text should be written in accordance with the HTML standard, that is, you should write „ä“ for „ä“. Finally, the last argument must remain empty for folders; for files, you must specify the appropriate file name to which the line refers. After the last line of the Explorer, you must still assign a last ex[x]. Its values are unimportant; what’s important is that it will serve as Level –1. This line with Level –1 serves as a marker stating that all lines have been set. After these assignments, you can call up the level of a line using ex[x].level. You can use ex[x].opened to determine whether a folder is open (if the line in question concerns a folder). You can use ex[x].description to see the text that will be displayed in the Explorer, and, last but not least, ex[x].filename will show you the file name of the file in question (provided the line concerns a file). Don’t forget to give the right-hand frame a name (“contents”); this will be important later on. Finally, save the page as INDEX.HTM. Get Going with JavaScript 56 The Explorer The Content Page In the right frame, the contents that the user has chosen are displayed. This means that for every page you can call up, you need to create an HTML file. In our case, we’ll need a start page START.HTM, a page called XY.HTM, and a page called XYZ.HTM. Here’s an example of how START.HTM might look: Since the page will be displayed in a frame, it doesn’t need a title of its own. Naturally you can also add graphics, tables, and other elements. The Explorer Page In principle, the Explorer page must “create itself” like the page with the labyrinth in the last section. Information about individual lines must be read out from the main page and then translated into HTML code. The basic structure should be familiar to you from the quiz game; The function print_explorer takes over the construction of the whole page. In order to imitate the graphical structure of the Windows Explorer, you’ll need the following graphics (each with an appropriate file name). You can also download them from the website. exmain.bmp exto.bmp exdat.bmp exend.bmp exminus.bmp exopen.bmp explus.bmp exvert.bmp exempty.bmp In order to guarantee that the browser will display these graphics right next to one another without a lot of space in between them, you’ll need to create a separate table for each line. At first glance this may seem really roundabout, but I don’t know of any other solution that is Netscape- and Microsoft- compatible. The following function, which is called up when the page is being built, must be declared in the JavaScript portion of the file. Get Going with JavaScript The Explorer 57 With var i=0, a counter variable is declared that will count the individual lines of the Explorer. With while (parent.ex[i].level!=-1), the loop will run until the last line is in place. This is also why the line that sets the level to -1 is necessary. Next, the program checks to see whether the level is smaller than or equal to the contents of the variable max. If a folder is closed, then later on the variable max will be set to the level of the folder. This prevents the display of subordinate files and folders (which have a higher level). If a line should be displayed, then a table will be opened. Next, the program checks to see what kind of line the line in question is: if it’s level 0, then it represents the main folder, so the function exmain is called. If, by contrast, the line concerns a regular folder, then the associated file name is empty, and the function exempty is called. This function is responsible for displaying empty fields in front of the folder so that it will appear far enough to the right. It also draws vertical lines that lead to other files or folders. After this, the function exfolder is called; it draws the folder. The argument i specifies the line number for the function. The empty fields, vertical lines, and the folder are placed in a table column, which is the only one in the table, and has already been opened and closed in the function print_explorer. In all other cases, the line concerns a file. The function calls are analogous to the lines for folders described above, but instead of exfolder, you’ll need to call exfile. Finally, the table is closed and the counter variable is incremented so that the program can continue with the next line. Get Going with JavaScript 58 The Explorer This function is only called for the first line. It draws the icon for the main folder in a cell of the table and then refers the program to the function unopen, which is responsible for the opening and closing of folders and will be discussed later on. Next, the name of the main folder is written into a new cell (parent.ex[0].description), which refers to the main page in the right-hand frame (parent.ex[0].filename). The font tags serve to produce a typeface that is appropriate for the Explorer. Using an if command, the program determines whether the main folder is open or closed. In the latter case, the variable max is set to 0 so that no subfolders or files will be displayed; otherwise, max will be set to a high enough value to enable the display of all files and folders. Next, we’ll talk about exfolder: In the first lines, the variables picture1 and picture2 are assigned the file names of the appropriate graphics. If a folder is open, then the program should display a minus sign and an open folder; if a folder is closed, then it should show a plus sign and a closed folder. The further course of this function corresponds to that of exmain. The only difference is that instead of the index 0 for the main directory, an i for the current line should be used. Also, two pictures will be displayed; the names of the files are taken from the variables picture1 and picture2. There is no reference to a page since we’re concerned with a folder here. The third function for displaying individual lines is called exfile: Next, the program determines whether the file follows a folder or file with the same level. If so, the variable picture is assigned the file name EXDAT.GIF; if not, it’s assigned EXEND.GIF. The line is completed in the same way as in the function exmain. Note that it is not necessary to change the variable max since a file cannot be open or closed like a folder. The function that draws the leading empty cells has not yet been mentioned; here it is: Using a for loop, all possible places for empty spaces or vertical lines are counted through using the counter variable j. The while loop, using the counter variable k, checks all previous lines until it encounters a line with a higher level, or the end of the file or folder with the same level as the current line. If this is the case, the variable paint is set to true. Finally, the program will draw a vertical line if there is another line with the same level; otherwise, it will add an empty space. The simplest function is the function unopen: It inverts the variable that determines whether a folder is open and loads the Explorer page into the frame anew. For the sake of clarity, here’s the entire source code: Get Going with JavaScript 60 The Explorer The complete file must be stored as EXPLORER.HTM. Customization Of course it could happen that you haven’t understood all the steps necessary for creating the pages of this quite complex project down to the last detail. Therefore, I would like to show you here how you can customize the Explorer to suit your own page. The only place where you’ll need to change anything is in the file INDEX.HTM. There you must be careful that the list with ex[i] is numbered continuously. With the first argument, the level, you can determine how far to the right the file or folder will be placed. In the case of folders, the second argument determines whether the folder should be open by default (true) or closed (false). After that comes a description of the line. Finally, there is the argument with the associated file name, which, in the case of folders, must be empty. Don’t forget the last line with the level -1. And be sure that you only give four arguments for each line. Get Going with JavaScript 62 Reserved Words and the Last Word… Reserved Words The following words are reserved and cannot be used as function or variable names: abstract boolean break byte case catch char class const continue debugger default delete do double else enum export extends false final finally float for function goto if implements import in instanceof int interface long native new null package private protected public return short static super switch synchronized this throw throws transient true try typeof var void volatile while with When you’re choosing variable and function names, you should be sure that they don’t contain any empty spaces or strange characters (only _ is allowed). Furthermore, you should not create names that are longer than 32 characters. Despite the freedom you have in naming, I would strongly recommend that you name your variables so that you’ll still know what their function is four weeks down the road. So, for example, you shouldn’t name your variables a, b, c, d, e and f; it would be more sensible to call them input, result, counter, day, month, and year instead. Get Going with JavaScript Index 67 Array, 42 Background color, 26 Calculator, 38 checked, 35 Color, 26 conditional, 24 Date, 11 defaultChecked, 35 defaultValue, 35 document, 26 document.forms, 34 document.frames, 31 document.location, 28 document.referrer, 28 document.title, 28 document.write, 11 elements, 34 else, 49 Event-Handler, 12 Explorer, 54 focus, 35 for, 22 Frames, 31, 42 Function, 17 getHours, 11 getMinutes, 11 Header, 7 Hello World, 8 if, 24 Image, 28, 29 Incorporation, 7 Body, 8 javascript, 16 length, 34, 40 Link, 11 Loops, 21 Math, 20 Moving Text, 40 Objects, 41 onBlur, 14 onChange, 15 onClick, 15 onFocus, 13 onLoad, 12 onMouseOut, 12, 13 onMouseOver, 13 onSubmit, 17 onUnload, 12 Operation, 20 Parameters, 9, 18 Pictures, 28 Quiz, 45 Reference, 11 Repetition, 21 round, 20 select, 35 selectedIndex, 35 setTimeout, 40 src, 28 Status line, 11, 41 Strings, 39 substring, 40 Text color, 26 this, 41 Time, 10 toLowerCase, 40 toUpperCase, 40 value, 35 variable global, 19 local, 18 Variable, 18 while, 23 window, 26