Web Components Polymer. Agenda I want bootstrap : 3 Today.

Slides:



Advertisements
Similar presentations
LiNC Developer Meetup Welcome!. Our job is to make your life easier APIs Tools and workflow Documentation Stay in touch: developers.lithium.com Join the.
Advertisements

The Document Object Model (DOM) 1 JavaScript is an object-based language—that is, it’s based on manipulating objects by changing each object’s properties.
AJAX & By – Anupama Sharma. Defining Ajax Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together.
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
ITM352 Javascript and Dynamic Web Pages: Client Side Processing.
Cascading Style Sheet. What is CSS? CSS stands for Cascading Style Sheets. CSS are a series of instruction that specify how markup elements should appear.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Building a UI with Zen Pat McGibbon –Sales Engineer.
Christopher M. Pascucci.NET Programming: Basic ASPX Scripting & HTML Embedment.
A really fairly simple guide to: mobile browser-based application development (part 4, JQuery & DOM) Chris Greenhalgh G54UBI / Chris Greenhalgh.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
CSS/Photoshop Layouts – Quiz #7 Lecture Code:
JQUERY | INTRODUCTION. jQuery  Open source JavaScript library  Simplifies the interactions between  HTML document, or the Document Object Model (DOM),
Styling and theming Build campaigns in style. What we'll look at... How a web document is structured How HTML and CSS fit together Tools you will need.
Working with the XML Document Object Model ©NIITeXtensible Markup Language/Lesson 7/Slide 1 of 44 Objectives In this lesson, you will learn to: *Identify.
WRT235: Writing in Electronic Environments Basic CSS.
5.2 DOM (Document Object Model). 2 Motto: To write it, it took three months; to conceive it three minutes; to collect the data in it — all my life. —F.
JavaScript – Quiz #9 Lecture Code:
Embedded Software SKKU 28 1 WebKit/EFL. Embedded Software SKKU 28 2 WebKit Parsing Layout and Painting WebKit and EFL Contents.
CA Professional Web Site Development Class 2: Anatomy of a Web Site and Web Page & Intro to HTML.
Polymer a framework for the evolving web. What is Polymer? New type of library for the evolving web o goal: support latest version of modern browserssupport.
Introduction to Programming the WWW I CMSC Summer 2003 Lecture 7.
Unleash the Power of jQuery Doncho Minkov Telerik Software Academy academy.telerik.com Senior Technical Trainer
INT222 - Internet Fundamentals Shi, Yue (Sunny) Office: T2095 SENECA COLLEGE.
Webview and Web services. Web Apps You can make your web content available to users in two ways in a traditional web browser in an Android application,
PERFORMANCE ENHANCEMENT IN ASP.NET By Hassan Tariq Session #1.
Putting Performance Best Practices Together to Create the Perfect SPA Chris Love2Dev.com.
Unleash the Power of jQuery Learning & Development Team Telerik Software Academy.
Web Technologies Lecture 7 Synchronous vs. asynchronous.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
CO1552 – Web Application Development Further JavaScript: Part 1: The Document Object Model Part 2: Functions and Events.
Web Components with Polymer Jeff Tapper Digital
HTML A brief introduction HTML1. HTML, what is? HTML is a markup language for describing web documents (web pages). HTML stands for Hyper Text Markup.
HTML and the DOM. What is HTML? Hypertext Interconnected documents Markup Our code goes around our documents Language Yes, it’s programming.
Web Technologies Lecture 8 JQuery. “A fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax.
Document Object Model Nasrullah. DOM When a page is loaded,browser creates a Document Object Model of the Page.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Introduction to JavaScript MIS 3502, Spring 2016 Jeremy Shafer Department of MIS Fox School of Business Temple University 2/2/2016.
XML DOM Week 11 Web site:
HTML Tutorial. What is HTML HTML is a markup language for describing web documents (web pages) HTML documents are described by HTML tags Each HTML tag.
Customizing Share Document Previews Will Abson Senior Integrations Engineer and Share Extras Project Lead
#SummitNow The Share Widget Library 13 th November 2013 Dave Draper
//liveVirtualacademy2011/ What’s New for ASP.NET 4.5 and Web Development in Visual Studio 11 Developer Preview Γιώργος Καπνιάς MVP, MCT, MCDP, MCDBA, MCTS,
Advanced Topics in Concurrency and Reactive Programming: HTML, CSS and DOM Trees Majeed Kassis.
X3DOM : Integrating 3D content seamlessly into webpage
Introduction to Dynamic Web Content
Web Basics: HTML/CSS/JavaScript What are they?
Javascript and Dynamic Web Pages: Client Side Processing
The Share Widget Library
50 Performance Tricks to Make your HTML5 apps and sites Faster
Unleash the Power of jQuery
Ad-blocker circumvention System
Intro to JavaScript CS 1150 Spring 2017.
LHC Dashboard Applications on top of the Broadcasting Mechanism
Web UI Basics ITM 352.
PHP + Oracle = Data-Driven Websites
Introduction to Dynamic Web Content
Modern web applications
Modern web applications
MIS JavaScript and API Workshop (Part 2)
jQuery Widgets: Tabs Requires core jQuery library + jQuery UI
Introduction to Web Components and Polymer
Web Development 101 Workshop
Client-Server Model: Requesting a Web Page
Web Client Side Technologies Raneem Qaddoura
Bootstrap Direct quote from source: bootstrap/
Murach's JavaScript and jQuery (3rd Ed.)
Web Programming and Design
Lab 1: D3 Setup John Fallon
Web Programming and Design
Presentation transcript:

Web Components Polymer

Agenda

I want bootstrap : 3 Today

4 We want components !

widgets frameworks pluggins Reusable Encapsulatable Etendable Composable We want Blackboxes !  Web components 5 Why components ?

4 specifications Import html Shadow Dom template Custom Element The four parts of Web Components are designed to work together, but you can also pick and choose which parts of Web Components to use. 6 What is it ?

include HTML documents in other HTML documents You're not limited to markup either. An import can also include CSS, JavaScript, or anything else an.html file can contain. In other words, this makes imports a fantastic tool for loading related HTML/CSS/JS. 7 HTML IMPORT

How ? To load content from another domain, the import location needs to be CORS-enabled The browser's network stack automatically de-dupes all requests from the same URL. This means that imports that reference the same URL are only retrieved once Do not block the parsing of the page 8 HTML IMPORT

Jump to content HTML and CSS elements are loaded but not inserted (available). It is accessed via the import property 9 HTML IMPORT

Javascript Executed in the context of the page Access to the DOM And that of the page 10 HTML IMPORT

11 SUPPORT : HTML IMPORT

Shadow DOM addresses the DOM tree encapsulation problem. ENCAPSULATION –insulated container –New node type –shadow root –shadow host 12 SHADOW DOM

Javascript –createShadowRoot –element.shadowRoot Instead of Your page looks like 13 SHADOW DOM

SHADOW DOM VS LIGHT DOM –visible subtree (childNodes, children, innerHTML...) –internal node –Composed DOM: what the browser sees and makes 14 SHADOW DOM

INSERTS POINTS : the content ! –Define zones in the shadow render Dom –No logical connection 15 SHADOW DOM

16 SHADOW DOM : SUPPORT

What is it ? DOM Models reusable 17 TEMPLATE

NOT IN DOCUMENT ! No side effect: DOM not returned uninterpreted script not loaded image Templates allow you to declare fragments of markup which are parsed as HTML, go unused at page load, but can be instantiated later on at runtime. 18 TEMPLATE

Usage –Recovery selector –Access to content: content –clone: becomes alive –insertion of clone 19 TEMPLATE

20 TEMPLATE SUPPORT

There's nothing modern about soup. Help us custom elements. You're our only hope! Define new types of HTML element ! Extend existing elements One functionality within a "tag“ Extend the API of existing DOM elements 21 CUSTOM ELEMENT

How ? –registerElement –name (with -) –proto (HTMLElement default) 22 CUSTOM ELEMENT

EXTEND EXISTING ELEMENT 23 CUSTOM ELEMENT

24 CUSTOM ELEMENT SUPPORT ….

SUPPORT too weak ……. Solutions : 25 It looks great BUT..

polyfills (platform.js) components (core-elements, paper-elements) sugaring (polymer.js) 26 POLYMER

Web Components Polyfills (custom element et HTMLImports) X-Tag Custom Elements X-Tag Core Library 27 X-TAG

28 Demo

Ressources Import Shadow Dom Styling Shadow Dom Template Custom Elements The Web Component Ecosystem Polymer X-Tag Material Design Meetup Webcomponents Credits: Eric Bidelman,Rob Dodson, Dominic Cooney, Cyril Balit 29

After credits scene !! 30