SlideShare une entreprise Scribd logo
1  sur  21
Speaking in Code




HTML + CSS + JavaScript
How it all works



Brian Lee

Professor Liel Leibovitz
Speaking in Code


Logistics

• Today will be mostly recap

• Please feel free to ask questions at anytime
Speaking in Code


Recap: Loops

• Execute same line(s) of code over and over

• Fundamental concept in programming

• Can be trickier with JavaScript
Speaking in Code


Recap: For Loops
• Basic Syntax
   for(var i = 0; i < 10; i++) {
        console.log(i);
   }

• Initialization: define variable useful to loop
• Conditional: keep looping while this is true
   – is “i” currently less than 10?

• Increment: executed at the end of the loop
Speaking in Code


Recap: Loop Mechanics
   for(var i = 0; i < 10; i++) {
        console.log(i);
   }


1. Initialization
2. Check Conditional: Stop loop if false
3. Run Code
4. Run Increment: i++              i=i+1
5. Step 2
Speaking in Code


Recap: Infinite Loops
• Loops with no exit strategy
Speaking in Code


Recap: Arrays

• Collection of items

• Like a box (even looks like it)
   []


• Each item has a designated spot

   var doughnuts= [   ,   ,   ,     ]
Speaking in Code


Recap: Arrays – Accessing Elements

• Elements: items in arrays

• Index: location of element in array
   – Starts from 0 not 1

  var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ +

• How to access the value “Boston Creme”
Speaking in Code


Recap: Arrays – Accessing Elements

• Elements: items in arrays

• Index: location of element in array
   – Starts from 0 not 1

  var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ +
                          0           1            2
• How to access the value “Boston Creme”
  doughnuts[0]
Speaking in Code


Recap: Loops and Arrays

• Use loops to write less code
  var doughnuts = *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ ]
  for(var i = 0; i < doughnuts.length; i++) {
       console.log(“This box has “ + doughnuts*i])
  }


  >> “This box has Boston Crème”
  >> “This box has Glazed”
  >> “This box has Old Fashioned”
Speaking in Code


Things we know about JavaScript
• Step by step instructions
   – HTML: defines content
   – CSS: defines style

• Tricky syntax (don’t forget ; or {   )
                                   }
• Variables
• if statements
• Functions
• Loops
Speaking in Code


Recap: Nesting Loops and “IF” Statements
  var temperature = 50;
  if(temperature > 60) {
       console.log(“Wow! It’s hot here!”);
  } else {
       console.log(“It should be warmer”);
  }

  var gasPrice = 1.79;
  for(var year = 2000; year <= 2013; year++){
       gasPrice = gasPrice + 1.15;
  }
  console.log(“Wow the gas price is $“ + gasPrice + “ already?!”)
Speaking in Code


Recap: Nesting Loops and “IF” Statements

for(var age = 0; age < 25; age++) {
     if(age < 21) {
          console.log("I am " + age + " years old and sad");
     } else {
          console.log("I am " + age + " years old and suddenly happy");
     }
 }
Speaking in Code


Reminder: So Why JavaScript?
• Gives instructions to the web page
   – Notice you can write JavaScript in the browser console?

• Real world application
   – Facebook: create your own “buttons” through code

• So many uses
   – Add/remove content dynamically
   – Change styles
   – React to user interaction
Speaking in Code


Reminder: Adding JavaScript

• Add JS to a page with the <script> tag

 <script type="text/javascript" src="script.js"></script>

• Just another file
   – .js
Speaking in Code


Reminder: Adding JavaScript

• Trigger functions based on user interaction
   – Clicking buttons -> runs a sequence of code ie.) functions

• Using the onclick handler

 <p onclick="someFunction()">Click me, I'm a paragraph</p>

• someFunction is defined in somewhere in the .js file
Speaking in Code


Reminder: JavaScript Commands

• So what else can we do with JS?
 document.getElementById('my-paragraph').innerHTML = ’Nerd Alert!';

• Find the element with the id          my-paragraph   and set the
  HTML within it to “Nerd Alert!”

• Scroll right 0px and down 100px

 window.scrollBy(0, 100);
Speaking in Code


If Statements on the Web

• Checking if a username is long enough
 var username = document.getElementById('username').value;
 if(username.length > 5) {
      alert('Registered!');
 } else {
      alert('Please supply a username longer than 5 characters.');
 }
Speaking in Code


For Loops on the Web

• Facebook select all

  var elms = document.getElementsByName("checkableitems[]");
  for(i = 0; i < elms.length; i++) {
       if (elms[i].type === "checkbox”) ,
             elms[i].click();
       }
  }
Speaking in Code


Put Your Knowledge to the Test!

http://bit.ly/jshtmlcss
Speaking in Code


Next Week!

• Your choice:
   – jQuery, Python, or Ruby!

• jQuery – JavaScript library that gives you ability to
  manipulate web pages MUCH easier

• Python/Ruby – “Backend” languages
   – So, what does code on the server side look like?

Contenu connexe

Similaire à Week 7 html css js

Week 6 java script loops
Week 6   java script loopsWeek 6   java script loops
Week 6 java script loopsbrianjihoonlee
 
Week 5 java script functions
Week 5  java script functionsWeek 5  java script functions
Week 5 java script functionsbrianjihoonlee
 
Lecture 03 - JQuery.pdf
Lecture 03 - JQuery.pdfLecture 03 - JQuery.pdf
Lecture 03 - JQuery.pdfLê Thưởng
 
Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chhom Karath
 
Intro to JavaScript - Thinkful LA, June 2017
Intro to JavaScript - Thinkful LA, June 2017Intro to JavaScript - Thinkful LA, June 2017
Intro to JavaScript - Thinkful LA, June 2017Thinkful
 
Thinkful - Intro to JavaScript
Thinkful - Intro to JavaScriptThinkful - Intro to JavaScript
Thinkful - Intro to JavaScriptTJ Stalcup
 
Intro to javascript (6:19)
Intro to javascript (6:19)Intro to javascript (6:19)
Intro to javascript (6:19)Thinkful
 
Intro to javascript (6:27)
Intro to javascript (6:27)Intro to javascript (6:27)
Intro to javascript (6:27)David Coulter
 
PHP complete reference with database concepts for beginners
PHP complete reference with database concepts for beginnersPHP complete reference with database concepts for beginners
PHP complete reference with database concepts for beginnersMohammed Mushtaq Ahmed
 
Leveling Up at JavaScript
Leveling Up at JavaScriptLeveling Up at JavaScript
Leveling Up at JavaScriptRaymond Camden
 
Week 8 intro to python
Week 8   intro to pythonWeek 8   intro to python
Week 8 intro to pythonbrianjihoonlee
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIDirk Ginader
 
Testing web APIs
Testing web APIsTesting web APIs
Testing web APIsFDConf
 
Selenium Tips & Tricks - StarWest 2015
Selenium Tips & Tricks - StarWest 2015Selenium Tips & Tricks - StarWest 2015
Selenium Tips & Tricks - StarWest 2015Andrew Krug
 
Tech talk on code quality
Tech talk on code qualityTech talk on code quality
Tech talk on code qualityAlexander Osin
 

Similaire à Week 7 html css js (20)

Week 6 java script loops
Week 6   java script loopsWeek 6   java script loops
Week 6 java script loops
 
Week 5 java script functions
Week 5  java script functionsWeek 5  java script functions
Week 5 java script functions
 
Lecture 03 - JQuery.pdf
Lecture 03 - JQuery.pdfLecture 03 - JQuery.pdf
Lecture 03 - JQuery.pdf
 
Chapter i c#(console application and programming)
Chapter i c#(console application and programming)Chapter i c#(console application and programming)
Chapter i c#(console application and programming)
 
Intro to JavaScript - Thinkful LA, June 2017
Intro to JavaScript - Thinkful LA, June 2017Intro to JavaScript - Thinkful LA, June 2017
Intro to JavaScript - Thinkful LA, June 2017
 
Thinkful - Intro to JavaScript
Thinkful - Intro to JavaScriptThinkful - Intro to JavaScript
Thinkful - Intro to JavaScript
 
Intro to javascript (6:19)
Intro to javascript (6:19)Intro to javascript (6:19)
Intro to javascript (6:19)
 
Intro to javascript (6:27)
Intro to javascript (6:27)Intro to javascript (6:27)
Intro to javascript (6:27)
 
PHP complete reference with database concepts for beginners
PHP complete reference with database concepts for beginnersPHP complete reference with database concepts for beginners
PHP complete reference with database concepts for beginners
 
Leveling Up at JavaScript
Leveling Up at JavaScriptLeveling Up at JavaScript
Leveling Up at JavaScript
 
Week 8 intro to python
Week 8   intro to pythonWeek 8   intro to python
Week 8 intro to python
 
Writing clean code
Writing clean codeWriting clean code
Writing clean code
 
Perfect Code
Perfect CodePerfect Code
Perfect Code
 
Lift talk
Lift talkLift talk
Lift talk
 
JavaScript Good Practices
JavaScript Good PracticesJavaScript Good Practices
JavaScript Good Practices
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
 
Testing web APIs
Testing web APIsTesting web APIs
Testing web APIs
 
Selenium Tips & Tricks - StarWest 2015
Selenium Tips & Tricks - StarWest 2015Selenium Tips & Tricks - StarWest 2015
Selenium Tips & Tricks - StarWest 2015
 
Performance patterns
Performance patternsPerformance patterns
Performance patterns
 
Tech talk on code quality
Tech talk on code qualityTech talk on code quality
Tech talk on code quality
 

Dernier

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 

Dernier (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 

Week 7 html css js

  • 1. Speaking in Code HTML + CSS + JavaScript How it all works Brian Lee Professor Liel Leibovitz
  • 2. Speaking in Code Logistics • Today will be mostly recap • Please feel free to ask questions at anytime
  • 3. Speaking in Code Recap: Loops • Execute same line(s) of code over and over • Fundamental concept in programming • Can be trickier with JavaScript
  • 4. Speaking in Code Recap: For Loops • Basic Syntax for(var i = 0; i < 10; i++) { console.log(i); } • Initialization: define variable useful to loop • Conditional: keep looping while this is true – is “i” currently less than 10? • Increment: executed at the end of the loop
  • 5. Speaking in Code Recap: Loop Mechanics for(var i = 0; i < 10; i++) { console.log(i); } 1. Initialization 2. Check Conditional: Stop loop if false 3. Run Code 4. Run Increment: i++ i=i+1 5. Step 2
  • 6. Speaking in Code Recap: Infinite Loops • Loops with no exit strategy
  • 7. Speaking in Code Recap: Arrays • Collection of items • Like a box (even looks like it) [] • Each item has a designated spot var doughnuts= [ , , , ]
  • 8. Speaking in Code Recap: Arrays – Accessing Elements • Elements: items in arrays • Index: location of element in array – Starts from 0 not 1 var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ + • How to access the value “Boston Creme”
  • 9. Speaking in Code Recap: Arrays – Accessing Elements • Elements: items in arrays • Index: location of element in array – Starts from 0 not 1 var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ + 0 1 2 • How to access the value “Boston Creme” doughnuts[0]
  • 10. Speaking in Code Recap: Loops and Arrays • Use loops to write less code var doughnuts = *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ ] for(var i = 0; i < doughnuts.length; i++) { console.log(“This box has “ + doughnuts*i]) } >> “This box has Boston Crème” >> “This box has Glazed” >> “This box has Old Fashioned”
  • 11. Speaking in Code Things we know about JavaScript • Step by step instructions – HTML: defines content – CSS: defines style • Tricky syntax (don’t forget ; or { ) } • Variables • if statements • Functions • Loops
  • 12. Speaking in Code Recap: Nesting Loops and “IF” Statements var temperature = 50; if(temperature > 60) { console.log(“Wow! It’s hot here!”); } else { console.log(“It should be warmer”); } var gasPrice = 1.79; for(var year = 2000; year <= 2013; year++){ gasPrice = gasPrice + 1.15; } console.log(“Wow the gas price is $“ + gasPrice + “ already?!”)
  • 13. Speaking in Code Recap: Nesting Loops and “IF” Statements for(var age = 0; age < 25; age++) { if(age < 21) { console.log("I am " + age + " years old and sad"); } else { console.log("I am " + age + " years old and suddenly happy"); } }
  • 14. Speaking in Code Reminder: So Why JavaScript? • Gives instructions to the web page – Notice you can write JavaScript in the browser console? • Real world application – Facebook: create your own “buttons” through code • So many uses – Add/remove content dynamically – Change styles – React to user interaction
  • 15. Speaking in Code Reminder: Adding JavaScript • Add JS to a page with the <script> tag <script type="text/javascript" src="script.js"></script> • Just another file – .js
  • 16. Speaking in Code Reminder: Adding JavaScript • Trigger functions based on user interaction – Clicking buttons -> runs a sequence of code ie.) functions • Using the onclick handler <p onclick="someFunction()">Click me, I'm a paragraph</p> • someFunction is defined in somewhere in the .js file
  • 17. Speaking in Code Reminder: JavaScript Commands • So what else can we do with JS? document.getElementById('my-paragraph').innerHTML = ’Nerd Alert!'; • Find the element with the id my-paragraph and set the HTML within it to “Nerd Alert!” • Scroll right 0px and down 100px window.scrollBy(0, 100);
  • 18. Speaking in Code If Statements on the Web • Checking if a username is long enough var username = document.getElementById('username').value; if(username.length > 5) { alert('Registered!'); } else { alert('Please supply a username longer than 5 characters.'); }
  • 19. Speaking in Code For Loops on the Web • Facebook select all var elms = document.getElementsByName("checkableitems[]"); for(i = 0; i < elms.length; i++) { if (elms[i].type === "checkbox”) , elms[i].click(); } }
  • 20. Speaking in Code Put Your Knowledge to the Test! http://bit.ly/jshtmlcss
  • 21. Speaking in Code Next Week! • Your choice: – jQuery, Python, or Ruby! • jQuery – JavaScript library that gives you ability to manipulate web pages MUCH easier • Python/Ruby – “Backend” languages – So, what does code on the server side look like?

Notes de l'éditeur

  1. Like microwave example - button
  2. var username = document.getElementById(&apos;username&apos;).value; if(username.length &gt; 5) { alert(&apos;Registered!&apos;); } else { alert(&apos;Please supply a username longer than 5 characters.&apos;); }