SlideShare une entreprise Scribd logo
1  sur  41
HTML5, CSS3 and jQuery with
SharePoint 2010 – what you
can (and need to) start doing
now
MSPUG - May 2012
~ Chris O’Connor (OBS
About Me
 Senior Consultant at OBS
 Blog : www.sharepointroot.com
 Twitter : @GrumpyWookie
 Dad of three boys – and keen cyclist
 Let’s talk MTB (!)
Agenda
 HTML5 – what & why
 CSS3
 SharePoint 2010
 jQuery
 REST + JSON
 jQuery Templates
 SharePoint vNext (15/2013?)
History of the Web (HTML)
 HTML 3.2 and CSS 1.0 (~1997)
 Browser wars : Netscape vs. Internet Explorer
 HTML 4.01 and CSS 2.0 (~1999)
 Exit Netscape – Enter FireFox, Opera, Safari, etc.
 XHTML 1.0 and CSS 2.1 (~2000)
 HTML content pages written as valid XML documents
 HTML 5 and CSS 3.0 (~2005)
 Rejects the constraints added by XHTML
 New HTML elements, CSS properties and JavaScript APIs
** SharePoint 2010
Moving to HTML5
• Why ?
 HTML to work consistently across all modern
browsers
 Eliminate need for Flash, Silverlight, etc
 New JavaScript APIs
 Target mobile devices - CEO's iPad !!
• And, simply…
 New stuff that makes sense
 Evolution of the language of the web
A new simpler
DOCTYPE
A new semantic
element
A new functional
element
Example : HTML5
New HTML5 semantic tags
 Layout & structure
<header>
<nav>
<article>
<section>
<figure>
<dialog>
<aside>
<time>
<footer>
<header></header>
<nav></nav>
<footer></footer>
<article>
<section>
<h2></h2>
<p></p>
<p></p>
</section>
<section>
<h3></h3>
<p></p>
</section>
</article>
<aside>
<section>
</section>
</aside>
New HTML5 Functional Tags
 New Elements Provide Functional Behavior
<canvas>
<svg> [Scalable Vector Graphics – defined by XML]
<audio>
<video>
<source>
<command>
<datalist>
<embed>
<output>
New HTML5 Functional Tags
<input type=‘TYPE’ id=‘myField’ />
 New Types :
tel week
search time
url datetime-local
email number
datetime range
date color
month placeholder
New HTML5 Functions (API)
 Additional methods & functions (JavaScript)
 Geolocation
 Determine current location
 2D drawing
 Canvas – draw lines & graphics using JavaScript
 Drag and drop
 Images & attachments within browser
 <img draggable="true" />
 Web storage
 Key-value pair framework - like cookies, but much richer
(tastier ?)
 …. plus more
http://html5demos.com
New for CSS3
 Rounded corners
#example1 {border-radius: 15px;}
 Text shadow
#title{text-shadow: 2px 2px 2px #000;}
 Gradient
background: -ms-linear-gradient(top,
#2F2727, #1a82f7);
BUT…!
 “Modern” browsers support portions of HTML5
specification
 IE 9
 Google Chrome
 Mozilla Firefox v4
 Apple Safari v5 (iOS)
 Full HTML5 support across browsers
anticipated in “2022” !
 Need failback / other way to show if not
supported
 Avoid “if browser-x, then {aaaa}”
What about SharePoint 2010 ?
• HTML5 Master Page
• Include HTML5 tags
 ListView + XSLT to render HTML5
 Include in Content Editor WebPart (CEWP)
 Page Layout
• BUT – browser support always an issue
 Need to support IE8 and IE7
HTML5 + CSS3 + SharePoint
2010
DEMO
jQuery Fundamentals
• Designed to hide differences between browsers
 Eliminate browser-specific code
• Focuses on two primary tasks
 Retrieving sets of elements from HTML pages
 Performing operations on the elements within a set
• jQuery is a great alternative (safe bet)
 Compared to HTML5
 Browser support
jQuery and SharePoint 2010
• Load JavaScript to SharePoint
 Download jQuery (eg. jquery-1.7.1.min.js)
 STYLE LIBRARY
• Reference JavaScript file/s
 <SCRIPTLINK> tag – in feature
 <SCRIPT> tag reference – Master Page
• Or – directly within CEWP or XSLT
Feature to deploy jQuery
• Create a SharePoint project in Visual Studio
2010
 Create a site collection-scoped feature (i.e.
scope=site)
 Add a Module to deploy jQuery JavaScript files
 Eg. STYLE LIBRARY or SITE ASSETS
How to use jQuery
• JavaScript code
 CSS Selectors
 Action
<script>
$('#ContactName').html('Joe Smith');
</script>
 SELECT stuff…
 DO stuff…
 jQuery – should’ve been called jSelect (?)
jQuery Selectors
 jQuery leverages familiar CSS selector syntax
jQuery Actions
• Perform function/update to a piece of HTML
 html()
 addClass()
 attr()
 slideUp()
• Most jQuery object methods support
cascading calls
jQuery Events
• Document ready event handler
 Executed when DOM document is ready for
access
 Can also dynamically add events to DOM
 click()
 hover()
 keypress()
jQuery UI Library
• Pre-coded UI components
 Based on built-in theming scheme
• jQuery UI Widgets
 Auto-complete
 Date Picker
 Slider
 Progress Bar
 Tabs
 Accordion
 Dialog
http://jqueryui.com/
Demo
jQuery + SharePoint 2010
jQuery+ SharePoint 2010
DEMO
REST
• Previously had ASMX Web Services
 Eg. GetLists, etc
 Returns as XML data
 Difficult to construct + call (XML packet)
 New WCF REST’ful Web Services
 URL based query
 JSON data format returned
 JavaScript Object Notation
REST : using ListData.svc
Get all items in list
http://server/_vti_bin/ListData.svc
Returns all items in MyList
http://server/_vti_bin/ListData.svc/MyList
Returns all items in MyList ordered ascending by Title
http://server/_vti_bin/ListData.svc/MyList?$orderby=Title
Returns all items in MyList that has a column that equal to
'Music'
http://server/_vti_bin/ListData.svc/MyList?$filter=MyColumn
eq 'Music'
jQuery + REST
• jQuery provides methods to call across
network
 Call to REST-based Web services (ListData.svc)
 Delegate for OnSuccess + OnError
 Returns results in JSON format
jQuery+ REST + SharePoint
2010
DEMO
jQuery Templates
• Layout for displaying data collections rendered as
HTML
 Create layout within JavaScript
 using literal HTML and tokens
 Just like XSLT – only easier (!)
 Render data + layout
 tmpl() method
 Process template once for each item in collection
Bring it all together
 jQuery
 Call to REST web service
 REST
 SharePoint List Data
 JSON data returned
 jQuery Template
 HTML template
jQuery Templates
jQuery Templates
jQuery Templates
Demo
jQuery + REST + jQuery
Templates
SharePoint vNext
• Think more about dev. with client-side
 REST
 jQuery
 HTML5 ? Maybe – browser dependant
• Office 365
 Combined code-base w/ SharePoint 15
 SandBoxed Solutions – or Client Side
• Windows 8
 HTML+jQuery – apps
Confused ? Where to ?
• Long way before vNext is PROD everywhere
• Get started with jQuery
• Get started with REST
• HTML5
 Browser support – write-once, test-many
 Modernizr – JS library
 Sandboxed Solutions
 Next session – Elaine van Bergen
Summary
• HTML5 – what & why
• CSS3
• SharePoint 2010
• jQuery
• REST + JSON
• jQuery Templates
• SharePoint vNext (?)
• Question + Answer
References
 www.w3schools.com/html5
 html5demos.com
 jquery.com
 tutsplus.com/course/30-days-to-learn-jquery/
 Sends link to a video every day – learnt LOTS !
 SharePoint 2010 Developer Training Course
 msdn.microsoft.com/en-us/gg620703
Contact Details
 Chris O’Connor
 Senior Consultant, OBS
[email]
chris.oconnor@obs.com.au
[blog] www.sharepointroot.com
[twitter] @grumpywookie
 Come and say hello at the OBS booth – or UG
booth
Gold Sponsors
Bronze Sponsors Media Sponsors
Silver Sponsors

Contenu connexe

Tendances

HTML5 New Features and Resources
HTML5 New Features and ResourcesHTML5 New Features and Resources
HTML5 New Features and ResourcesRon Reiter
 
BP101: A Modernized Workflow w/ Domino/XPages
BP101: A Modernized Workflow w/ Domino/XPagesBP101: A Modernized Workflow w/ Domino/XPages
BP101: A Modernized Workflow w/ Domino/XPagesedm00se
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5Todd Anglin
 
MWLUG - Universal Java
MWLUG  -  Universal JavaMWLUG  -  Universal Java
MWLUG - Universal JavaPhilippe Riand
 
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript Developereille
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript DevelopereilleSpirit-teknologiapäivät Petri Niemi HTML5 & JavaScript Developereille
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript DevelopereilleTieturi Oy
 
Making HTML5 Work Everywhere
Making HTML5 Work EverywhereMaking HTML5 Work Everywhere
Making HTML5 Work EverywhereTodd Anglin
 
Tips for Building your First XPages Java Application
Tips for Building your First XPages Java ApplicationTips for Building your First XPages Java Application
Tips for Building your First XPages Java ApplicationTeamstudio
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)Shumpei Shiraishi
 
WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016jancbeck
 
Web components, so close!
Web components, so close!Web components, so close!
Web components, so close!Aleks Zinevych
 
Upgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasUpgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasSuzanne Dergacheva
 
HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)Peter Lubbers
 
Everything XControls
Everything XControlsEverything XControls
Everything XControlsTeamstudio
 
Get Involved with WordPress
Get Involved with WordPressGet Involved with WordPress
Get Involved with WordPressMario Peshev
 
Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Peter Lubbers
 

Tendances (20)

SPDY
SPDYSPDY
SPDY
 
HTML5 New Features and Resources
HTML5 New Features and ResourcesHTML5 New Features and Resources
HTML5 New Features and Resources
 
BP101: A Modernized Workflow w/ Domino/XPages
BP101: A Modernized Workflow w/ Domino/XPagesBP101: A Modernized Workflow w/ Domino/XPages
BP101: A Modernized Workflow w/ Domino/XPages
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5
 
MWLUG - Universal Java
MWLUG  -  Universal JavaMWLUG  -  Universal Java
MWLUG - Universal Java
 
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript Developereille
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript DevelopereilleSpirit-teknologiapäivät Petri Niemi HTML5 & JavaScript Developereille
Spirit-teknologiapäivät Petri Niemi HTML5 & JavaScript Developereille
 
Edge of the Web
Edge of the WebEdge of the Web
Edge of the Web
 
Making HTML5 Work Everywhere
Making HTML5 Work EverywhereMaking HTML5 Work Everywhere
Making HTML5 Work Everywhere
 
Tips for Building your First XPages Java Application
Tips for Building your First XPages Java ApplicationTips for Building your First XPages Java Application
Tips for Building your First XPages Java Application
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
 
HTML5 in IE9
HTML5 in IE9HTML5 in IE9
HTML5 in IE9
 
IBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with AngularjsIBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with Angularjs
 
WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016WordPress Theme Performance - WP Vienna meetup 8.6.2016
WordPress Theme Performance - WP Vienna meetup 8.6.2016
 
Web components, so close!
Web components, so close!Web components, so close!
Web components, so close!
 
Upgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasUpgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and Gotchas
 
Html 5 introduction
Html 5 introductionHtml 5 introduction
Html 5 introduction
 
HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)
 
Everything XControls
Everything XControlsEverything XControls
Everything XControls
 
Get Involved with WordPress
Get Involved with WordPressGet Involved with WordPress
Get Involved with WordPress
 
Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)
 

Similaire à 2012 - HTML5, CSS3 and jQuery with SharePoint 2010

HTML5 Bootcamp: Essential HTML, CSS, & JavaScript
HTML5 Bootcamp: Essential HTML, CSS, & JavaScriptHTML5 Bootcamp: Essential HTML, CSS, & JavaScript
HTML5 Bootcamp: Essential HTML, CSS, & JavaScriptTodd Anglin
 
A Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with JavascriptA Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with JavascriptSharePoint Saturday New Jersey
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An OverviewNagendra Um
 
JavaScript front end performance optimizations
JavaScript front end performance optimizationsJavaScript front end performance optimizations
JavaScript front end performance optimizationsChris Love
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkBob German
 
Building intranet applications with ASP.NET AJAX and jQuery
Building intranet applications with ASP.NET AJAX and jQueryBuilding intranet applications with ASP.NET AJAX and jQuery
Building intranet applications with ASP.NET AJAX and jQueryAlek Davis
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Sadaaki HIRAI
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery GuideMark Rackley
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConSPTechCon
 
2011 - SharePoint + jQuery
2011 - SharePoint + jQuery2011 - SharePoint + jQuery
2011 - SharePoint + jQueryChris O'Connor
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4Jon Galloway
 
The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14Mark Rackley
 
2011 - SharePoint + jQuery
2011 - SharePoint + jQuery2011 - SharePoint + jQuery
2011 - SharePoint + jQueryChris O'Connor
 
いま使われているHTML5と、これからのHTML5
いま使われているHTML5と、これからのHTML5いま使われているHTML5と、これからのHTML5
いま使われているHTML5と、これからのHTML5Sadaaki HIRAI
 

Similaire à 2012 - HTML5, CSS3 and jQuery with SharePoint 2010 (20)

HTML5 Bootcamp: Essential HTML, CSS, & JavaScript
HTML5 Bootcamp: Essential HTML, CSS, & JavaScriptHTML5 Bootcamp: Essential HTML, CSS, & JavaScript
HTML5 Bootcamp: Essential HTML, CSS, & JavaScript
 
A Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with JavascriptA Beginner's Guide to Client Side Development with Javascript
A Beginner's Guide to Client Side Development with Javascript
 
Demystifying HTML5
Demystifying HTML5Demystifying HTML5
Demystifying HTML5
 
Push it to the Edge
Push it to the EdgePush it to the Edge
Push it to the Edge
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An Overview
 
JavaScript front end performance optimizations
JavaScript front end performance optimizationsJavaScript front end performance optimizations
JavaScript front end performance optimizations
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint Framework
 
Html5
Html5Html5
Html5
 
Spsmi13 charts
Spsmi13 chartsSpsmi13 charts
Spsmi13 charts
 
What is HTML 5?
What is HTML 5?What is HTML 5?
What is HTML 5?
 
Building intranet applications with ASP.NET AJAX and jQuery
Building intranet applications with ASP.NET AJAX and jQueryBuilding intranet applications with ASP.NET AJAX and jQuery
Building intranet applications with ASP.NET AJAX and jQuery
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
 
2011 - SharePoint + jQuery
2011 - SharePoint + jQuery2011 - SharePoint + jQuery
2011 - SharePoint + jQuery
 
SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4SoCal Code Camp 2011 - ASP.NET MVC 4
SoCal Code Camp 2011 - ASP.NET MVC 4
 
The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14
 
2011 - SharePoint + jQuery
2011 - SharePoint + jQuery2011 - SharePoint + jQuery
2011 - SharePoint + jQuery
 
いま使われているHTML5と、これからのHTML5
いま使われているHTML5と、これからのHTML5いま使われているHTML5と、これからのHTML5
いま使われているHTML5と、これからのHTML5
 
Html5 & less css
Html5 & less cssHtml5 & less css
Html5 & less css
 

Plus de Chris O'Connor

Developing Mobile Apps with Office365
Developing Mobile Apps with Office365Developing Mobile Apps with Office365
Developing Mobile Apps with Office365Chris O'Connor
 
2011 - From Zero to productivity (Tech Ed 2011)
2011 - From Zero to productivity (Tech Ed 2011)2011 - From Zero to productivity (Tech Ed 2011)
2011 - From Zero to productivity (Tech Ed 2011)Chris O'Connor
 
2011 - jQuery + SharePoint (TechEd)
2011 - jQuery + SharePoint (TechEd)2011 - jQuery + SharePoint (TechEd)
2011 - jQuery + SharePoint (TechEd)Chris O'Connor
 
2011 - Adding bells & whistles to the ribbon
2011 - Adding bells & whistles to the ribbon2011 - Adding bells & whistles to the ribbon
2011 - Adding bells & whistles to the ribbonChris O'Connor
 
2010 - Developer look at the Client Object Model
2010 - Developer look at the Client Object Model2010 - Developer look at the Client Object Model
2010 - Developer look at the Client Object ModelChris O'Connor
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development Chris O'Connor
 
2015 - PowerShell, C# and JavaScript for Office 365
2015 - PowerShell, C# and JavaScript for Office 3652015 - PowerShell, C# and JavaScript for Office 365
2015 - PowerShell, C# and JavaScript for Office 365Chris O'Connor
 
2014 - The Future Of Forms (InfoPath)
2014 - The Future Of Forms (InfoPath)2014 - The Future Of Forms (InfoPath)
2014 - The Future Of Forms (InfoPath)Chris O'Connor
 
2014 - Integrating Yammer with SharePoint
2014 - Integrating Yammer with SharePoint2014 - Integrating Yammer with SharePoint
2014 - Integrating Yammer with SharePointChris O'Connor
 

Plus de Chris O'Connor (9)

Developing Mobile Apps with Office365
Developing Mobile Apps with Office365Developing Mobile Apps with Office365
Developing Mobile Apps with Office365
 
2011 - From Zero to productivity (Tech Ed 2011)
2011 - From Zero to productivity (Tech Ed 2011)2011 - From Zero to productivity (Tech Ed 2011)
2011 - From Zero to productivity (Tech Ed 2011)
 
2011 - jQuery + SharePoint (TechEd)
2011 - jQuery + SharePoint (TechEd)2011 - jQuery + SharePoint (TechEd)
2011 - jQuery + SharePoint (TechEd)
 
2011 - Adding bells & whistles to the ribbon
2011 - Adding bells & whistles to the ribbon2011 - Adding bells & whistles to the ribbon
2011 - Adding bells & whistles to the ribbon
 
2010 - Developer look at the Client Object Model
2010 - Developer look at the Client Object Model2010 - Developer look at the Client Object Model
2010 - Developer look at the Client Object Model
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development
 
2015 - PowerShell, C# and JavaScript for Office 365
2015 - PowerShell, C# and JavaScript for Office 3652015 - PowerShell, C# and JavaScript for Office 365
2015 - PowerShell, C# and JavaScript for Office 365
 
2014 - The Future Of Forms (InfoPath)
2014 - The Future Of Forms (InfoPath)2014 - The Future Of Forms (InfoPath)
2014 - The Future Of Forms (InfoPath)
 
2014 - Integrating Yammer with SharePoint
2014 - Integrating Yammer with SharePoint2014 - Integrating Yammer with SharePoint
2014 - Integrating Yammer with SharePoint
 

Dernier

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
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
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Dernier (20)

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
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
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
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
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

2012 - HTML5, CSS3 and jQuery with SharePoint 2010

  • 1. HTML5, CSS3 and jQuery with SharePoint 2010 – what you can (and need to) start doing now MSPUG - May 2012 ~ Chris O’Connor (OBS
  • 2. About Me  Senior Consultant at OBS  Blog : www.sharepointroot.com  Twitter : @GrumpyWookie  Dad of three boys – and keen cyclist  Let’s talk MTB (!)
  • 3. Agenda  HTML5 – what & why  CSS3  SharePoint 2010  jQuery  REST + JSON  jQuery Templates  SharePoint vNext (15/2013?)
  • 4. History of the Web (HTML)  HTML 3.2 and CSS 1.0 (~1997)  Browser wars : Netscape vs. Internet Explorer  HTML 4.01 and CSS 2.0 (~1999)  Exit Netscape – Enter FireFox, Opera, Safari, etc.  XHTML 1.0 and CSS 2.1 (~2000)  HTML content pages written as valid XML documents  HTML 5 and CSS 3.0 (~2005)  Rejects the constraints added by XHTML  New HTML elements, CSS properties and JavaScript APIs ** SharePoint 2010
  • 5. Moving to HTML5 • Why ?  HTML to work consistently across all modern browsers  Eliminate need for Flash, Silverlight, etc  New JavaScript APIs  Target mobile devices - CEO's iPad !! • And, simply…  New stuff that makes sense  Evolution of the language of the web
  • 6. A new simpler DOCTYPE A new semantic element A new functional element Example : HTML5
  • 7. New HTML5 semantic tags  Layout & structure <header> <nav> <article> <section> <figure> <dialog> <aside> <time> <footer> <header></header> <nav></nav> <footer></footer> <article> <section> <h2></h2> <p></p> <p></p> </section> <section> <h3></h3> <p></p> </section> </article> <aside> <section> </section> </aside>
  • 8. New HTML5 Functional Tags  New Elements Provide Functional Behavior <canvas> <svg> [Scalable Vector Graphics – defined by XML] <audio> <video> <source> <command> <datalist> <embed> <output>
  • 9. New HTML5 Functional Tags <input type=‘TYPE’ id=‘myField’ />  New Types : tel week search time url datetime-local email number datetime range date color month placeholder
  • 10. New HTML5 Functions (API)  Additional methods & functions (JavaScript)  Geolocation  Determine current location  2D drawing  Canvas – draw lines & graphics using JavaScript  Drag and drop  Images & attachments within browser  <img draggable="true" />  Web storage  Key-value pair framework - like cookies, but much richer (tastier ?)  …. plus more http://html5demos.com
  • 11. New for CSS3  Rounded corners #example1 {border-radius: 15px;}  Text shadow #title{text-shadow: 2px 2px 2px #000;}  Gradient background: -ms-linear-gradient(top, #2F2727, #1a82f7);
  • 12. BUT…!  “Modern” browsers support portions of HTML5 specification  IE 9  Google Chrome  Mozilla Firefox v4  Apple Safari v5 (iOS)  Full HTML5 support across browsers anticipated in “2022” !  Need failback / other way to show if not supported  Avoid “if browser-x, then {aaaa}”
  • 13. What about SharePoint 2010 ? • HTML5 Master Page • Include HTML5 tags  ListView + XSLT to render HTML5  Include in Content Editor WebPart (CEWP)  Page Layout • BUT – browser support always an issue  Need to support IE8 and IE7
  • 14. HTML5 + CSS3 + SharePoint 2010 DEMO
  • 15. jQuery Fundamentals • Designed to hide differences between browsers  Eliminate browser-specific code • Focuses on two primary tasks  Retrieving sets of elements from HTML pages  Performing operations on the elements within a set • jQuery is a great alternative (safe bet)  Compared to HTML5  Browser support
  • 16. jQuery and SharePoint 2010 • Load JavaScript to SharePoint  Download jQuery (eg. jquery-1.7.1.min.js)  STYLE LIBRARY • Reference JavaScript file/s  <SCRIPTLINK> tag – in feature  <SCRIPT> tag reference – Master Page • Or – directly within CEWP or XSLT
  • 17. Feature to deploy jQuery • Create a SharePoint project in Visual Studio 2010  Create a site collection-scoped feature (i.e. scope=site)  Add a Module to deploy jQuery JavaScript files  Eg. STYLE LIBRARY or SITE ASSETS
  • 18. How to use jQuery • JavaScript code  CSS Selectors  Action <script> $('#ContactName').html('Joe Smith'); </script>  SELECT stuff…  DO stuff…  jQuery – should’ve been called jSelect (?)
  • 19. jQuery Selectors  jQuery leverages familiar CSS selector syntax
  • 20. jQuery Actions • Perform function/update to a piece of HTML  html()  addClass()  attr()  slideUp() • Most jQuery object methods support cascading calls
  • 21. jQuery Events • Document ready event handler  Executed when DOM document is ready for access  Can also dynamically add events to DOM  click()  hover()  keypress()
  • 22. jQuery UI Library • Pre-coded UI components  Based on built-in theming scheme • jQuery UI Widgets  Auto-complete  Date Picker  Slider  Progress Bar  Tabs  Accordion  Dialog http://jqueryui.com/
  • 25. REST • Previously had ASMX Web Services  Eg. GetLists, etc  Returns as XML data  Difficult to construct + call (XML packet)  New WCF REST’ful Web Services  URL based query  JSON data format returned  JavaScript Object Notation
  • 26. REST : using ListData.svc Get all items in list http://server/_vti_bin/ListData.svc Returns all items in MyList http://server/_vti_bin/ListData.svc/MyList Returns all items in MyList ordered ascending by Title http://server/_vti_bin/ListData.svc/MyList?$orderby=Title Returns all items in MyList that has a column that equal to 'Music' http://server/_vti_bin/ListData.svc/MyList?$filter=MyColumn eq 'Music'
  • 27. jQuery + REST • jQuery provides methods to call across network  Call to REST-based Web services (ListData.svc)  Delegate for OnSuccess + OnError  Returns results in JSON format
  • 28. jQuery+ REST + SharePoint 2010 DEMO
  • 29. jQuery Templates • Layout for displaying data collections rendered as HTML  Create layout within JavaScript  using literal HTML and tokens  Just like XSLT – only easier (!)  Render data + layout  tmpl() method  Process template once for each item in collection
  • 30. Bring it all together  jQuery  Call to REST web service  REST  SharePoint List Data  JSON data returned  jQuery Template  HTML template
  • 34.
  • 35. Demo jQuery + REST + jQuery Templates
  • 36. SharePoint vNext • Think more about dev. with client-side  REST  jQuery  HTML5 ? Maybe – browser dependant • Office 365  Combined code-base w/ SharePoint 15  SandBoxed Solutions – or Client Side • Windows 8  HTML+jQuery – apps
  • 37. Confused ? Where to ? • Long way before vNext is PROD everywhere • Get started with jQuery • Get started with REST • HTML5  Browser support – write-once, test-many  Modernizr – JS library  Sandboxed Solutions  Next session – Elaine van Bergen
  • 38. Summary • HTML5 – what & why • CSS3 • SharePoint 2010 • jQuery • REST + JSON • jQuery Templates • SharePoint vNext (?) • Question + Answer
  • 39. References  www.w3schools.com/html5  html5demos.com  jquery.com  tutsplus.com/course/30-days-to-learn-jquery/  Sends link to a video every day – learnt LOTS !  SharePoint 2010 Developer Training Course  msdn.microsoft.com/en-us/gg620703
  • 40. Contact Details  Chris O’Connor  Senior Consultant, OBS [email] chris.oconnor@obs.com.au [blog] www.sharepointroot.com [twitter] @grumpywookie  Come and say hello at the OBS booth – or UG booth
  • 41. Gold Sponsors Bronze Sponsors Media Sponsors Silver Sponsors

Notes de l'éditeur

  1. Chris O’Connor (OBS) chris.oconnor@obs.com.au
  2. HTML5 example – sample ‘page’ – not necessarily ASP.NET or SharePoint – but just as an example
  3. Good description : http://www.ibm.com/developerworks/library/x-html5/
  4. EXAMPLES : <input list="browsers" name="browser" /> <datalist id="browsers"> <option value="Internet Explorer"> <option value="Firefox"> <option value="Google Chrome"> <option value="Opera"> <option value="Safari"> </datalist>   <video width="320" height="240" controls="controls">   <source src="movie.mp4" type="video/mp4" />   <source src="movie.ogg" type="video/ogg" />   <source src="movie.webm" type="video/webm" /> <i>Your browser does not support the video tag.</i> </video> <canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"> Your browser does not support the canvas element. </canvas> <script type="text/javascript"> var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.fillStyle="#FF0000"; ctx.fillRect(0,0,150,75); </script>
  5. Drag + drop to document library – in SharePoint vNext – wouldn’t that be cool ?!?
  6. Other links : http://www.css3.info/preview/multiple-backgrounds/ http://css-tricks.com/examples/CSS3Gradient/
  7. Master page – using Header, Nav, Content, Footer
  8. REST = Representational state transfer JSON = JavaScript Object Notation
  9. Turn off feed view http://www.walkernews.net/2007/03/25/ie-7-xml-feed-display-rss-feed-validation/ Comes back as RSS feed – need to view as XML