SlideShare uma empresa Scribd logo
1 de 35
August 12, 2015
© Sreenath H B, 2014
Web Front End
HTML5
CSS3
JavaScript
Ajax
jQuery
Angular, Backbone, Knockout
Agenda
 WWW Explained
 HTML5
 CSS3
 Bootstrap
 JavaScript
 Ajax
 JSON
 jQuery, jQuery UI
 Angular, Knockout, Backbone
WWW
 Computer Networks
 Network Addresses
 Browsers and Web Servers
 Hyper Text Transfer Protocol (HTTP)
 Hyper Text Markup Language (HTML)
 Web Applications
The Three Layers
HTML
 Basic Structure
 DTD
 Elements, Tags, Nodes
 Attributes, Properties, Values
 Forms
 GET, POST …
The Rules of HTML
 HTML Attribute Values May Be Case Sensitive
 HTML Is Sensitive to a Single White Space Character
 HTML Follows a Content Model
 Elements Should Have Close Tags Unless Empty
 Unused Elements May Minimize
 Elements Should Nest In Correct Order
 Attribute Values Should Be Quoted
 Browsers Ignore Unknown Attributes and Elements
Core Elements & Attributes
 Headings
 ID, name, class, title, alt
 BR, HR,
 P, SPAN, DIV
 Blockquote, Pre
 Lists – OL, UL
HTML Forms
 Input
 Text
 Password
 Hidden
 Submit
 Button
 Checkbox
 Radio
 Reset
 File
 Image
 Select
 Textarea
HTML5
 New Input Types
 Color, Date, Datetime, Email, Month, Number, Range, Search, Tel, Url,
Week
 New Attributes
 autocomplete, autofocus, autosave, inputmode, list, max, min, multiple,
pattern, placeholder, readonly, required, step
 New Semantic Elements
 section, nav, article, aside, hgroup, header, footer, time, mark, main, data,
math, datalist, progress, meter, menu
 Canvas, SVG
 Video, Audio
 Geolocation API, Local Storage API & Offline Apps
 Full Screen, Vibration, Media, Web Sockets API
 http://diveintohtml5.info/
CSS
 Selection
 Class, ID, Element
 Ancestor Descendent
 Parent > Child
 Inheritance, Cascade & !important
 Ems, pixels and points
 Box Model: Positioning & Display
 Floats & Clearing
 Backgrounds & Sprites
 Border, Padding, Margin
 Typeface
 Pseudo Classes
CSS3
 :before, :after
 Multiple Backgrounds, Gradients, Border-Image
 Transforms, Transitions, Animations
 Box Shadow, Border Radius
 Media Queries & Responsive CSS
Design Philosophies
 Graceful Degradation
 Progressive Enhancement
 Feature Detection using Modernizr
 Accessibility: http://diveintoaccessibility.info/
 Section 508, WCAG
Bootstrap
 http://getbootstrap.com/
 HTML5 / CSS3 Standards Compliant Responsive Web Pages
 CSS: <link rel="stylesheet"
href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.cs
s">
 JavaScript: <script
src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"><
/script>
 Depends on jQuery
Bootstrap
 Grids
 row & 12 columns
 col-lg-n, col-md-n, col-sm-n, col-xs-n
 Navbars
 Panels
 Lists, Labels & Wells
 Breadcrumbs, Pagination
 Form Styling
 Jumbotron
 Alert, Progress Bars
 Media
 Carousel, Tabs, Collapse, Dropdown, Modal
 Scorllspy, Popover, Tooltip, Affix
JavaScript
 History: http://youtu.be/v2ifWcnQs6M (First 13.5 min only)
 Where to add scripts?
 How to debug JavaScript?
 Waiting for the page to finish loading
 Unobtrusive Programming
 Selection of DOM Elements
 You can change HTML using JavaScript
 You can change CSS using JavaScript
 Hello DHTML
 You can traverse the DOM too!
JavaScript Data
 Data Types – Number, String, Boolean
 Date
 Arrays, Associative Arrays
 If Statement, Truthy & Falsy Values
 Loops – While, Do-While, For, For-In
 Functions
 Scope of Variables
 Objects & JSON
 Regular Expressions
 === & !==, !!
 JavaScript Closures
 Functions with arbitrary params
JavaScript Events
 Events & Listeners
 Event Object & Event Context
 Event Cancellation
 Event Bubbling & Capturing
 Supporting older browsers.
 Call & Apply
Ajax
OK, JavaScript Ajax
Ajax
 XMLHttpRequest
 Open(Type, Url)
 Send(data)
 readyState & readystatechange – 0,1,2,3,4
 status - 200
 responseXML and responseText
 IE 5 & 6 – new ActiveXObject(“Microsoft.XMLHTTP”);
 XMLHttpRequest object is non-reusable
 XSS & CORS
jQuery
 Its just JavaScript!
 CDN, Minification, Local fallback
 DOMReady vs Window Load
 The jQuery Object
 Looping with each();
 this
 Chaining
 Accessing DOM Objects
 Array Subscript – Unsafe
 .get(n)
 Making peace with other libraries – noConflict()
 Caching for performance
Selectors – The Heart of jQuery
 Element Selector: $(“element”)
 ID Selector: $(“#id”)
 Class Selector: $(“.classname”)
 Ancestor Descendant: $(“E F”)
 Parent Child: $(“E > F”)
 Siblings – Adjacent & General
 Adjacent Sibling : $(“E + F”)
 General Siblings : $(“E ~ F”);
 Multiple Selectors: $(“E, F, G”)
Effects & Animations
 Hide, Show
 fadeIn, fadeOut
 Toggle
 slideUp, slideDown
 slideToggle
 .animate()
Working with Forms
 :text
 :checkbox
 :radio
 :image
 :submit
 :reset
 :password
 :file
 :input
 :button
 :enabled
 :disabled
 :checked
 :selected
Selectors Contd..
:first-child, :last-child, :only-child :nth-child(n)
$(“li:first-child”);
$(“tr:last-child”);
$(“img:only-child”);
$(“tr:nth-child(2n)”);
Attribute Selectors
Has Attribute: $(“img[alt]”);
Begins With: $(“a[href^=mailto:]”);
Ends With: $(“a[href$=.pdf]”);
Contains: $(“a[href*=microsoft]”);
Equals: $(“:checkbox[checked=true]”)
 :not(s), :empty, :eq(n), :contains(s)
 :even, :odd
DOM Traversal
 .filter()
 .siblings()
 .parent(), .children(), .parents()
 .next(), .nextAll(), .prev(), .prevAll(), .andSelf()
 .find()
Manipulating Styles
• .addClass()
• .removeClass()
• .css(“height”, “35px”)
Events
 Bubbling using Live, Die & Delegate and On
 Bind, Once
 Shorthand Events
 Passing additional parameters to event listeners
 Compound Events
 Toggle, Hover
DOM Manipulation
 .text()
 .html()
 .val()
 .append(), prepend()
 .remove()
 .empty()
 .attr(), .removeAttr()
 addClass(), removeClass()
 Creating DOM Nodes
 insertAfter, after, insertBefore, before
 prependTo, appendTo
 .wrap()
jQuery AJAX
 .load(“a.html”)
 $.getJSON(“b.json”);
 $.get(“c.xml”);
 $.post(“d.php”);
 $.ajax({
url:””,
type:”GET”,
dataType: “html”,
success: function(data){
},
error: function(xhr){
}
})
Ajax Contd..
 Calling a 3rd Party REST API / Web Service using jQuery Ajax
(http://openweathermap.org/API)
 JSONP & XSS
 JSON to HTML using a for-in loop
Authoring Plugins
(function($){
$.fn.myPlugin = function(options){
var defaults = { };
options = $.extend(defaults, options);
return this.each(function(){
//My Code for selected elements
});
}
})(jQuery);
//Calling
$(“selector”).myPlugin({options})
AngularJS
 MV* Design Patterns Overview
 AngularJS Intro
Other Libraries
 Backbone
 Knockout
 Ember
 Foundation
About Author
 Sreenath H B is the Product Owner for
eIntern LLC in the DC Metro Area.
 He specializes in Cloud Infrastructure
Management, Web Front End Development
and programming using the Micrososft Tech
Stack
 He is an avid traveler and blogger.
 Twitter: @ubshreenath
 Website: http://sreenath.net

Mais conteúdo relacionado

Mais procurados

Semantic accessibility
Semantic accessibilitySemantic accessibility
Semantic accessibilityIan Stuart
 
Try Web Components
Try Web ComponentsTry Web Components
Try Web Components拓樹 谷
 
jQuery Mobile with HTML5
jQuery Mobile with HTML5jQuery Mobile with HTML5
jQuery Mobile with HTML5madhurpgarg
 
Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Rakesh Jha
 
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012crokitta
 
Chromelist
ChromelistChromelist
Chromelistmouzri
 
CSS basic cheat sheet
CSS basic cheat sheetCSS basic cheat sheet
CSS basic cheat sheetAbeer Megahed
 
Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)Marc Grabanski
 

Mais procurados (9)

Semantic accessibility
Semantic accessibilitySemantic accessibility
Semantic accessibility
 
Try Web Components
Try Web ComponentsTry Web Components
Try Web Components
 
jQuery Mobile with HTML5
jQuery Mobile with HTML5jQuery Mobile with HTML5
jQuery Mobile with HTML5
 
Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap
 
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
 
Chromelist
ChromelistChromelist
Chromelist
 
CSS basic cheat sheet
CSS basic cheat sheetCSS basic cheat sheet
CSS basic cheat sheet
 
ActiveDOM
ActiveDOMActiveDOM
ActiveDOM
 
Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)
 

Destaque

JavaScript: Values, Types and Variables
JavaScript: Values, Types and VariablesJavaScript: Values, Types and Variables
JavaScript: Values, Types and VariablesLearnNowOnline
 
Web Server - Internet Applications
Web Server - Internet ApplicationsWeb Server - Internet Applications
Web Server - Internet Applicationssandra sukarieh
 
Internet, domain name, worldwideweb
Internet, domain name, worldwidewebInternet, domain name, worldwideweb
Internet, domain name, worldwidewebSaurabh Pandey
 
Quick dive into WebVR
Quick dive into WebVRQuick dive into WebVR
Quick dive into WebVRJanne Aukia
 
WebVR with Three.js!
WebVR with Three.js!WebVR with Three.js!
WebVR with Three.js!誠人 堀口
 
Firefox Extension Development
Firefox Extension DevelopmentFirefox Extension Development
Firefox Extension Developmentphamvanvung
 
WebRTC - On Standards, Identity and Telco Strategy
WebRTC - On Standards, Identity and Telco StrategyWebRTC - On Standards, Identity and Telco Strategy
WebRTC - On Standards, Identity and Telco StrategyJose de Castro
 
Introduction to The VR Web
Introduction to The VR WebIntroduction to The VR Web
Introduction to The VR WebLiv Erickson
 
eXo SEA - JavaScript Introduction Training
eXo SEA - JavaScript Introduction TrainingeXo SEA - JavaScript Introduction Training
eXo SEA - JavaScript Introduction TrainingHoat Le
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspectiveshwetank
 
JavaScript and Web Standards Sitting in a Tree
JavaScript and Web Standards Sitting in a TreeJavaScript and Web Standards Sitting in a Tree
JavaScript and Web Standards Sitting in a TreeJenn Lukas
 

Destaque (20)

Photo and photo
Photo and photoPhoto and photo
Photo and photo
 
JavaScript: Values, Types and Variables
JavaScript: Values, Types and VariablesJavaScript: Values, Types and Variables
JavaScript: Values, Types and Variables
 
JavaScript Data Types
JavaScript Data TypesJavaScript Data Types
JavaScript Data Types
 
Web Server - Internet Applications
Web Server - Internet ApplicationsWeb Server - Internet Applications
Web Server - Internet Applications
 
Internet, domain name, worldwideweb
Internet, domain name, worldwidewebInternet, domain name, worldwideweb
Internet, domain name, worldwideweb
 
Intro to HTML5
Intro to HTML5Intro to HTML5
Intro to HTML5
 
Estudo 01
Estudo 01Estudo 01
Estudo 01
 
Quick dive into WebVR
Quick dive into WebVRQuick dive into WebVR
Quick dive into WebVR
 
Web vr creative_vr
Web vr creative_vrWeb vr creative_vr
Web vr creative_vr
 
WebVR with Three.js!
WebVR with Three.js!WebVR with Three.js!
WebVR with Three.js!
 
Firefox Extension Development
Firefox Extension DevelopmentFirefox Extension Development
Firefox Extension Development
 
JavaScript Web Workers
JavaScript Web WorkersJavaScript Web Workers
JavaScript Web Workers
 
WebRTC - On Standards, Identity and Telco Strategy
WebRTC - On Standards, Identity and Telco StrategyWebRTC - On Standards, Identity and Telco Strategy
WebRTC - On Standards, Identity and Telco Strategy
 
WebVR - JAX 2016
WebVR -  JAX 2016WebVR -  JAX 2016
WebVR - JAX 2016
 
Javascript the New Parts
Javascript the New PartsJavascript the New Parts
Javascript the New Parts
 
Introduction to The VR Web
Introduction to The VR WebIntroduction to The VR Web
Introduction to The VR Web
 
20160713 webvr
20160713 webvr20160713 webvr
20160713 webvr
 
eXo SEA - JavaScript Introduction Training
eXo SEA - JavaScript Introduction TrainingeXo SEA - JavaScript Introduction Training
eXo SEA - JavaScript Introduction Training
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspective
 
JavaScript and Web Standards Sitting in a Tree
JavaScript and Web Standards Sitting in a TreeJavaScript and Web Standards Sitting in a Tree
JavaScript and Web Standards Sitting in a Tree
 

Semelhante a Web Front End - (HTML5, CSS3, JavaScript) ++

Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Frédéric Harper
 
Intro to jQuery
Intro to jQueryIntro to jQuery
Intro to jQueryAlan Hecht
 
J Query The Write Less Do More Javascript Library
J Query   The Write Less Do More Javascript LibraryJ Query   The Write Less Do More Javascript Library
J Query The Write Less Do More Javascript Libraryrsnarayanan
 
SEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePointSEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePointMarc D Anderson
 
Html5 and web technology update
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology updateDoug Domeny
 
jQuery Rescue Adventure
jQuery Rescue AdventurejQuery Rescue Adventure
jQuery Rescue AdventureAllegient
 
IE8 Dev Overview_pp2003
IE8 Dev Overview_pp2003IE8 Dev Overview_pp2003
IE8 Dev Overview_pp2003Wes Yanaga
 
J Query(04 12 2008) Foiaz
J Query(04 12 2008) FoiazJ Query(04 12 2008) Foiaz
J Query(04 12 2008) Foiaztestingphase
 
jQuery presentation
jQuery presentationjQuery presentation
jQuery presentationMahesh Reddy
 
A to Z about JQuery - Become Newbie to Expert Java Developer
A to Z about JQuery - Become Newbie to Expert Java DeveloperA to Z about JQuery - Become Newbie to Expert Java Developer
A to Z about JQuery - Become Newbie to Expert Java DeveloperManoj Bhuva
 
Web performance essentials - Goodies
Web performance essentials - GoodiesWeb performance essentials - Goodies
Web performance essentials - GoodiesJerry Emmanuel
 
Cartegraph Live HTML, CSS, JavaScript and jQuery Training
Cartegraph Live HTML, CSS, JavaScript and jQuery TrainingCartegraph Live HTML, CSS, JavaScript and jQuery Training
Cartegraph Live HTML, CSS, JavaScript and jQuery TrainingShane Church
 
jQuery Tips Tricks Trivia
jQuery Tips Tricks TriviajQuery Tips Tricks Trivia
jQuery Tips Tricks TriviaCognizant
 

Semelhante a Web Front End - (HTML5, CSS3, JavaScript) ++ (20)

Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
 
Intro to jQuery
Intro to jQueryIntro to jQuery
Intro to jQuery
 
前端概述
前端概述前端概述
前端概述
 
J Query The Write Less Do More Javascript Library
J Query   The Write Less Do More Javascript LibraryJ Query   The Write Less Do More Javascript Library
J Query The Write Less Do More Javascript Library
 
SEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePointSEF2013 - A jQuery Primer for SharePoint
SEF2013 - A jQuery Primer for SharePoint
 
jQuery
jQueryjQuery
jQuery
 
Html5 and web technology update
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology update
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
 
jQuery Rescue Adventure
jQuery Rescue AdventurejQuery Rescue Adventure
jQuery Rescue Adventure
 
IE8 Dev Overview_pp2003
IE8 Dev Overview_pp2003IE8 Dev Overview_pp2003
IE8 Dev Overview_pp2003
 
J Query(04 12 2008) Foiaz
J Query(04 12 2008) FoiazJ Query(04 12 2008) Foiaz
J Query(04 12 2008) Foiaz
 
J query training
J query trainingJ query training
J query training
 
J Query Public
J Query PublicJ Query Public
J Query Public
 
jQuery
jQueryjQuery
jQuery
 
jQuery presentation
jQuery presentationjQuery presentation
jQuery presentation
 
A to Z about JQuery - Become Newbie to Expert Java Developer
A to Z about JQuery - Become Newbie to Expert Java DeveloperA to Z about JQuery - Become Newbie to Expert Java Developer
A to Z about JQuery - Become Newbie to Expert Java Developer
 
Web performance essentials - Goodies
Web performance essentials - GoodiesWeb performance essentials - Goodies
Web performance essentials - Goodies
 
Cartegraph Live HTML, CSS, JavaScript and jQuery Training
Cartegraph Live HTML, CSS, JavaScript and jQuery TrainingCartegraph Live HTML, CSS, JavaScript and jQuery Training
Cartegraph Live HTML, CSS, JavaScript and jQuery Training
 
jQuery Tips Tricks Trivia
jQuery Tips Tricks TriviajQuery Tips Tricks Trivia
jQuery Tips Tricks Trivia
 
Making Modern Websites
Making Modern WebsitesMaking Modern Websites
Making Modern Websites
 

Último

Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 

Último (20)

Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 

Web Front End - (HTML5, CSS3, JavaScript) ++

  • 1. August 12, 2015 © Sreenath H B, 2014 Web Front End HTML5 CSS3 JavaScript Ajax jQuery Angular, Backbone, Knockout
  • 2. Agenda  WWW Explained  HTML5  CSS3  Bootstrap  JavaScript  Ajax  JSON  jQuery, jQuery UI  Angular, Knockout, Backbone
  • 3. WWW  Computer Networks  Network Addresses  Browsers and Web Servers  Hyper Text Transfer Protocol (HTTP)  Hyper Text Markup Language (HTML)  Web Applications
  • 4.
  • 6. HTML  Basic Structure  DTD  Elements, Tags, Nodes  Attributes, Properties, Values  Forms  GET, POST …
  • 7. The Rules of HTML  HTML Attribute Values May Be Case Sensitive  HTML Is Sensitive to a Single White Space Character  HTML Follows a Content Model  Elements Should Have Close Tags Unless Empty  Unused Elements May Minimize  Elements Should Nest In Correct Order  Attribute Values Should Be Quoted  Browsers Ignore Unknown Attributes and Elements
  • 8. Core Elements & Attributes  Headings  ID, name, class, title, alt  BR, HR,  P, SPAN, DIV  Blockquote, Pre  Lists – OL, UL
  • 9. HTML Forms  Input  Text  Password  Hidden  Submit  Button  Checkbox  Radio  Reset  File  Image  Select  Textarea
  • 10. HTML5  New Input Types  Color, Date, Datetime, Email, Month, Number, Range, Search, Tel, Url, Week  New Attributes  autocomplete, autofocus, autosave, inputmode, list, max, min, multiple, pattern, placeholder, readonly, required, step  New Semantic Elements  section, nav, article, aside, hgroup, header, footer, time, mark, main, data, math, datalist, progress, meter, menu  Canvas, SVG  Video, Audio  Geolocation API, Local Storage API & Offline Apps  Full Screen, Vibration, Media, Web Sockets API  http://diveintohtml5.info/
  • 11. CSS  Selection  Class, ID, Element  Ancestor Descendent  Parent > Child  Inheritance, Cascade & !important  Ems, pixels and points  Box Model: Positioning & Display  Floats & Clearing  Backgrounds & Sprites  Border, Padding, Margin  Typeface  Pseudo Classes
  • 12. CSS3  :before, :after  Multiple Backgrounds, Gradients, Border-Image  Transforms, Transitions, Animations  Box Shadow, Border Radius  Media Queries & Responsive CSS
  • 13. Design Philosophies  Graceful Degradation  Progressive Enhancement  Feature Detection using Modernizr  Accessibility: http://diveintoaccessibility.info/  Section 508, WCAG
  • 14. Bootstrap  http://getbootstrap.com/  HTML5 / CSS3 Standards Compliant Responsive Web Pages  CSS: <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.cs s">  JavaScript: <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js">< /script>  Depends on jQuery
  • 15. Bootstrap  Grids  row & 12 columns  col-lg-n, col-md-n, col-sm-n, col-xs-n  Navbars  Panels  Lists, Labels & Wells  Breadcrumbs, Pagination  Form Styling  Jumbotron  Alert, Progress Bars  Media  Carousel, Tabs, Collapse, Dropdown, Modal  Scorllspy, Popover, Tooltip, Affix
  • 16. JavaScript  History: http://youtu.be/v2ifWcnQs6M (First 13.5 min only)  Where to add scripts?  How to debug JavaScript?  Waiting for the page to finish loading  Unobtrusive Programming  Selection of DOM Elements  You can change HTML using JavaScript  You can change CSS using JavaScript  Hello DHTML  You can traverse the DOM too!
  • 17. JavaScript Data  Data Types – Number, String, Boolean  Date  Arrays, Associative Arrays  If Statement, Truthy & Falsy Values  Loops – While, Do-While, For, For-In  Functions  Scope of Variables  Objects & JSON  Regular Expressions  === & !==, !!  JavaScript Closures  Functions with arbitrary params
  • 18. JavaScript Events  Events & Listeners  Event Object & Event Context  Event Cancellation  Event Bubbling & Capturing  Supporting older browsers.  Call & Apply
  • 19. Ajax
  • 21. Ajax  XMLHttpRequest  Open(Type, Url)  Send(data)  readyState & readystatechange – 0,1,2,3,4  status - 200  responseXML and responseText  IE 5 & 6 – new ActiveXObject(“Microsoft.XMLHTTP”);  XMLHttpRequest object is non-reusable  XSS & CORS
  • 22. jQuery  Its just JavaScript!  CDN, Minification, Local fallback  DOMReady vs Window Load  The jQuery Object  Looping with each();  this  Chaining  Accessing DOM Objects  Array Subscript – Unsafe  .get(n)  Making peace with other libraries – noConflict()  Caching for performance
  • 23. Selectors – The Heart of jQuery  Element Selector: $(“element”)  ID Selector: $(“#id”)  Class Selector: $(“.classname”)  Ancestor Descendant: $(“E F”)  Parent Child: $(“E > F”)  Siblings – Adjacent & General  Adjacent Sibling : $(“E + F”)  General Siblings : $(“E ~ F”);  Multiple Selectors: $(“E, F, G”)
  • 24. Effects & Animations  Hide, Show  fadeIn, fadeOut  Toggle  slideUp, slideDown  slideToggle  .animate()
  • 25. Working with Forms  :text  :checkbox  :radio  :image  :submit  :reset  :password  :file  :input  :button  :enabled  :disabled  :checked  :selected
  • 26. Selectors Contd.. :first-child, :last-child, :only-child :nth-child(n) $(“li:first-child”); $(“tr:last-child”); $(“img:only-child”); $(“tr:nth-child(2n)”); Attribute Selectors Has Attribute: $(“img[alt]”); Begins With: $(“a[href^=mailto:]”); Ends With: $(“a[href$=.pdf]”); Contains: $(“a[href*=microsoft]”); Equals: $(“:checkbox[checked=true]”)  :not(s), :empty, :eq(n), :contains(s)  :even, :odd
  • 27. DOM Traversal  .filter()  .siblings()  .parent(), .children(), .parents()  .next(), .nextAll(), .prev(), .prevAll(), .andSelf()  .find() Manipulating Styles • .addClass() • .removeClass() • .css(“height”, “35px”)
  • 28. Events  Bubbling using Live, Die & Delegate and On  Bind, Once  Shorthand Events  Passing additional parameters to event listeners  Compound Events  Toggle, Hover
  • 29. DOM Manipulation  .text()  .html()  .val()  .append(), prepend()  .remove()  .empty()  .attr(), .removeAttr()  addClass(), removeClass()  Creating DOM Nodes  insertAfter, after, insertBefore, before  prependTo, appendTo  .wrap()
  • 30. jQuery AJAX  .load(“a.html”)  $.getJSON(“b.json”);  $.get(“c.xml”);  $.post(“d.php”);  $.ajax({ url:””, type:”GET”, dataType: “html”, success: function(data){ }, error: function(xhr){ } })
  • 31. Ajax Contd..  Calling a 3rd Party REST API / Web Service using jQuery Ajax (http://openweathermap.org/API)  JSONP & XSS  JSON to HTML using a for-in loop
  • 32. Authoring Plugins (function($){ $.fn.myPlugin = function(options){ var defaults = { }; options = $.extend(defaults, options); return this.each(function(){ //My Code for selected elements }); } })(jQuery); //Calling $(“selector”).myPlugin({options})
  • 33. AngularJS  MV* Design Patterns Overview  AngularJS Intro
  • 34. Other Libraries  Backbone  Knockout  Ember  Foundation
  • 35. About Author  Sreenath H B is the Product Owner for eIntern LLC in the DC Metro Area.  He specializes in Cloud Infrastructure Management, Web Front End Development and programming using the Micrososft Tech Stack  He is an avid traveler and blogger.  Twitter: @ubshreenath  Website: http://sreenath.net

Notas do Editor

  1. Attribute values may be case sensitive depending on server systems XHTML became a W3C Recommendation in Jan 2000 XHTML – Tags and attributes need to be lowercase, Empty Tags must self close
  2. Var sandwich = function(){}; getAttribute(); getAttribute(); accessing attributes directly Changing styles – spl. Case for hyphen seperated styles
  3. Create a sample with few paragraphs of text. The paragraphs are preceeded by a header and an elipsis link the clicking of the elipsis must show/hide the paragraph text.
  4. Activity: Create a Style Switcher to change font size of a page based on the selection of 3 div elements
  5. Activity: Create a plug`in $().shadow that applies a shadow to the selected elements