Javascript. Interacting with web pages. by Aaron Wheeler Design Prototyper, Yahoo! Inc.

Size: px
Start display at page:

Download "Javascript. Interacting with web pages. by Aaron Wheeler Design Prototyper, Yahoo! Inc."

Transcription

1 Javascript Interacting with web pages by Aaron Wheeler Design Prototyper, Yahoo! Inc.

2 Schedule of How To: Building Blocks: elements & objects DOM JSON Manipulate elements CSS HTML Events Talk to web services AJAX JSONP Homework

3 Document Object Model

4 Document Object Model Humans see web pages as they are displayed on the screen, but browsers see web pages as a structured group of nested page elements (links, paragraphs, divs, etc.). This structured grouping of page elements is called the Document Object Model (DOM).

5 Document Object Model Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div> In order to change parts of the visible page, we must programatically be able to change parts of the DOM. Javascript and CSS both have support for traversing and referencing parts of the DOM.

6 Document Object Model document.getelementbyid( headertitle ) Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

7 Document Object Model #headertitle { color:yellow; } Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

8 Document Object Model document.getelementsbyclassname( content ) Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

9 Document Object Model.content { background:black; } Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

10 Document Object Model document.getelementsbytagname( p ) Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

11 Document Object Model p { padding: 0; } Traverse elements on the page JS selectors document.getelementbyid document.getelementsbyclassname document.getelementsbytagname CSS selectors id tag class name <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div>

12 JSON: JS Object Notation var cornucopia = { corn : [ cob1, cob2, cob3 ], squash : { pumpkin : [...], summer squash : [...], trumpet : [...], }, } leaves : [ redleaf1, orangeleaf2, yellowleafn]

13 Humans visualize objects as groups or clusters of things. Programatically, Javascript denotes objects using JSON. A Javascript object is basically a group of key-value pairs separated by a colon. A key can be a string or a literal, and the value can be any valid Javascript (variable reference, string, integer, boolean, null, function, etc.) JSON: JS Object Notation var cornucopia = { corn : [ cob1, cob2, cob3 ], squash : { pumpkin : [...], summer squash : [...], trumpet : [...], }, } leaves : [ redleaf1, orangeleaf2, yellowleafn]

14 Humans visualize objects as groups or clusters of things. Programatically, Javascript denotes objects using JSON. A Javascript object is basically a group of key-value pairs separated by a colon. A key can be a string or a literal, and the value can be any valid Javascript (variable reference, string, integer, boolean, null, function, etc.) JSON: JS Object Notation Key-Value Pairs Keys are strings or plain text Values are JS var cornucopia = { corn : [ cob1, cob2, cob3 ], squash : { pumpkin : [...], summer squash : [...], trumpet : [...], }, } leaves : [ redleaf1, orangeleaf2, yellowleafn]

15 JSON: JS Object Notation var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

16 JSON: JS Object Notation // reference keys with dot-notation myobject.key1 // => value1 var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

17 JSON: JS Object Notation // or reference keys with array-notation myobject[ key1 ] // => value1 var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

18 JSON: JS Object Notation // values are evaluated myobject[ sum ] // => 2 var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

19 JSON: JS Object Notation // Functions can conveniently be stored myobject[ fn ]() // => x var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

20 JSON: JS Object Notation // keys need not be strings myobject.array[0] // => a var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

21 JSON: JS Object Notation // but keys can be referenced as strings myobject[ array ][1] // => b var myobject = { key1 : value1, sum : 1+1, fn : function(){return x }, array: [ a, b, c ] };

22 Manipulation

23 Manipulation In order to manipulate the visible page, we have to change the DOM. Two common ways to do this are to change CSS classes and HTML in the DOM with Javascript. In order to execute the Javascript, we leverage user events.

24 Manipulation CSS - toggle CSS class names - add class name - remove class name HTML - innerhtml - change HTML - append HTML <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has a long and illustrious history.</p> <p>here s a taste!</p> </div> <script> var h = document. getelementbyid( js_title ); </script>

25 Manipulation: CSS h.classname = highlight CSS - toggle CSS class names - add class name - remove class name HTML - innerhtml - change HTML - append HTML <div class= content > <h1 id= headertitle class= highlight > JS History</h1> <p>javascript has...</p> </div> <script> var h = document. getelementbyid( headertitle ); </script>

26 Manipulation: CSS h.classname = h.classname. replace(/(^ )content( $)/, ) CSS - toggle CSS class names - add class name - remove class name HTML - innerhtml - change HTML - append HTML <div class= > <h1 id= headertitle > JS History</h1> <p>javascript has...</p> </div> <script> var h = document. getelementbyid( headertitle ); </script>

27 Manipulation: HTML h.innerhtml = Javascript CSS - toggle CSS class names - add class name - remove class name HTML - innerhtml - change HTML - append HTML <div class= content > <h1 id= headertitle > Javascript</h1> <p>javascript has...</p> </div> <script> var h = document. getelementbyid( headertitle ); </script>

28 Manipulation: HTML h.innerhtml += <em>over the ages</em> CSS - toggle CSS class names - add class name - remove class name HTML - innerhtml - change HTML - append HTML <div class= content > <h1 id= headertitle > JS History <em>over the ages</em> </h1> <p>javascript has...</p> </div> <script> var h = document. getelementbyid( headertitle ); </script>

29 Manipulation: Events CSS - :hover HTML + Javascript - onhover - onmouseover / onmouseout - onmouseclick - onfocus / onblur - onload <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has...</p> </div>

30 Manipulation: Events CSS - :hover HTML + Javascript - onhover - onmouseover / onmouseout - onmouseclick - onfocus / onblur - onload <style> h1 { color:white; } h1:hover { color:pink; } </style> <div class= content > <h1 id= headertitle > JS History</h1> <p>javascript has...</p> </div>

31 Manipulation: Events CSS - :hover HTML + Javascript - onhover - onmouseover / onmouseout - onclick - onfocus / onblur - onload <script> function add(elt) { elt.innerhtml = parseint(elt.innerhtml)+1; } </script> <div class= content > <h1 id= headertitle > JS History</h1> <p onclick= add(this); > 0</p> </div>

32 Manipulation: Events CSS - :hover HTML + Javascript - onhover - onmouseover / onmouseout - onclick - onfocus / onblur - onload <script> function add(elt) { elt.innerhtml = parseint(elt.innerhtml)+1; } </script> <div class= content > <h1 id= headertitle > JS History</h1> <p onclick= add(this); > 1</p> </div>

33 Manipulation: Events CSS - :hover HTML + Javascript - onhover - onmouseover / onmouseout - onclick - onfocus / onblur - onload <script> function add(elt) { elt.innerhtml = parseint(elt.innerhtml)+1; } </script> <div class= content > <h1 id= headertitle > JS History</h1> <p onclick= add(this); > 2</p> </div>

34 Talking to the Web Web App Internet AJAX Web 2.0 introduced asynchronous ways of talking to the web via AJAX. This spurred a revolution in web apps, but had some shortcomings.

35 Talking to the Web JSONP YQL (think babelfish) As web apps matured, so did the means for talking to the web. JSONP is a cross-domain method for talking to supporting web APIs, and YQL is a way for talking to these APIs.

36 Talking to the Web AJAX - Asynchronous Javascript XML - Limited to same-domain communication JSONP - JSON with Padding - work-around for cross-site JS loading YQL - Yahoo! Query Language - Standardize way to talk to web APIs Asynchronous behavior Two or more things happen concurrently (aka threading) Callback functions Provide direction on what to do once an asynchronous call (thread) completes.

37 Talking to the Web AJAX - Asynchronous Javascript XML - Limited to same-domain communication JSONP - JSON with Padding - work-around for cross-site JS loading Leverages Javascript function XMLHTTPRequest Cannot load data from third-party domains YQL - Yahoo! Query Language - Standardize way to talk to web APIs

38 Talking to the Web AJAX - Asynchronous Javascript XML - Limited to same-domain communication JSONP - JSON with Padding - work-around for cross-site JS loading YQL - Yahoo! Query Language - Standardize way to talk to web APIs Calls third-party domains by injecting a <script> tag into the document. Response is wrapped in a function call. <!-- responds with cb({flickrpics:[]}) --> <script src= flickr.com/ popular.json?cbfunc=cb > </script> <script> function cb(dat) {...}

39 Talking to the Web AJAX - Asynchronous Javascript XML - Limited to same-domain communication JSONP - JSON with Padding - work-around for cross-site JS loading YQL - Yahoo! Query Language - Standardize way to talk to web APIs var query = select * from search.web where query = dogs ; function callback(data) { alert( got data! ); console.log(data); } // YQL is a custom class // in Homework #3 YQL.query(query, callback );

40 Homework Create clickable tabs Track history of tab clicks Tabbed access to faceted web search Solutions for all homework can be found by appending 1 to the URL. For example, the solution to the first homework can be found at

Example. Represent this as XML

Example. Represent this as XML Example INF 221 program class INF 133 quiz Assignment Represent this as XML JSON There is not an absolutely correct answer to how to interpret this tree in the respective languages. There are multiple

More information

Performance Testing for Ajax Applications

Performance Testing for Ajax Applications Radview Software How to Performance Testing for Ajax Applications Rich internet applications are growing rapidly and AJAX technologies serve as the building blocks for such applications. These new technologies

More information

AJAX and JSON Lessons Learned. Jim Riecken, Senior Software Engineer, Blackboard Inc.

AJAX and JSON Lessons Learned. Jim Riecken, Senior Software Engineer, Blackboard Inc. AJAX and JSON Lessons Learned Jim Riecken, Senior Software Engineer, Blackboard Inc. About Me Jim Riecken Senior Software Engineer At Blackboard for 4 years. Work out of the Vancouver office. Working a

More information

MASTERTAG DEVELOPER GUIDE

MASTERTAG DEVELOPER GUIDE MASTERTAG DEVELOPER GUIDE TABLE OF CONTENTS 1 Introduction... 4 1.1 What is the zanox MasterTag?... 4 1.2 What is the zanox page type?... 4 2 Create a MasterTag application in the zanox Application Store...

More information

DOM, Jav Ja a v Script a and AJA AJ X A Madalina Croitoru IUT Mont Mon pellier

DOM, Jav Ja a v Script a and AJA AJ X A Madalina Croitoru IUT Mont Mon pellier DOM, JavaScript and AJAX Madalina Croitoru IUT Montpellier JavaScript Initially called LiveScript Implemented in Netscape Navigator Microsoft adapts it in 1996: Jscript European Computer Manufacturers

More information

jquery Tutorial for Beginners: Nothing But the Goods

jquery Tutorial for Beginners: Nothing But the Goods jquery Tutorial for Beginners: Nothing But the Goods Not too long ago I wrote an article for Six Revisions called Getting Started with jquery that covered some important things (concept-wise) that beginning

More information

JavaScript Basics & HTML DOM. Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com

JavaScript Basics & HTML DOM. Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com JavaScript Basics & HTML DOM Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com 2 Disclaimer & Acknowledgments Even though Sang Shin is a full-time employee

More information

CRM Developer Form Scripting. @DavidYack

CRM Developer Form Scripting. @DavidYack CRM Developer Form Scripting @DavidYack Using Form Scripting Allows dynamic business rules to be implemented on forms Script can run in response to Form Events Form Script is uploaded and run from CRM

More information

JavaScript: Client-Side Scripting. Chapter 6

JavaScript: Client-Side Scripting. Chapter 6 JavaScript: Client-Side Scripting Chapter 6 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of Web http://www.funwebdev.com Development Section 1 of 8 WHAT IS JAVASCRIPT

More information

Performance Testing Web 2.0

Performance Testing Web 2.0 Performance Testing Web 2.0 David Chadwick Rational Testing Evangelist dchadwick@us.ibm.com Dawn Peters Systems Engineer, IBM Rational petersda@us.ibm.com 2009 IBM Corporation WEB 2.0 What is it? 2 Web

More information

Chapter 12: Advanced topic Web 2.0

Chapter 12: Advanced topic Web 2.0 Chapter 12: Advanced topic Web 2.0 Contents Web 2.0 DOM AJAX RIA Web 2.0 "Web 2.0" refers to the second generation of web development and web design that facilities information sharing, interoperability,

More information

Types of Cloud Computing

Types of Cloud Computing Types of Cloud Computing (SaaS)Software as a Service XaaS (PaaS) Platform as a Service (IaaS) Infrastructure as a Service Access to Cloud computing Service Web URL (standard HTTP methods) web brower HTTP

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 Course 20480B: Programming in HTML5 with JavaScript and CSS3 Course Details Course Outline Module 1: Overview of HTML and CSS This module provides an overview of HTML and CSS, and describes how to use

More information

WEB DEVELOPMENT COURSE (PHP/ MYSQL)

WEB DEVELOPMENT COURSE (PHP/ MYSQL) WEB DEVELOPMENT COURSE (PHP/ MYSQL) COURSE COVERS: HTML 5 CSS 3 JAVASCRIPT JQUERY BOOTSTRAP 3 PHP 5.5 MYSQL SYLLABUS HTML5 Introduction to HTML Introduction to Internet HTML Basics HTML Elements HTML Attributes

More information

A Model of the Operation of The Model-View- Controller Pattern in a Rails-Based Web Server

A Model of the Operation of The Model-View- Controller Pattern in a Rails-Based Web Server A of the Operation of The -- Pattern in a Rails-Based Web Server January 10, 2011 v 0.4 Responding to a page request 2 A -- user clicks a link to a pattern page in on a web a web application. server January

More information

Overview. In the beginning. Issues with Client Side Scripting What is JavaScript? Syntax and the Document Object Model Moving forward with JavaScript

Overview. In the beginning. Issues with Client Side Scripting What is JavaScript? Syntax and the Document Object Model Moving forward with JavaScript Overview In the beginning Static vs. Dynamic Content Issues with Client Side Scripting What is JavaScript? Syntax and the Document Object Model Moving forward with JavaScript AJAX Libraries and Frameworks

More information

CSC309 Winter 2016 Lecture 3. Larry Zhang

CSC309 Winter 2016 Lecture 3. Larry Zhang CSC309 Winter 2016 Lecture 3 Larry Zhang 1 Why Javascript Javascript is for dynamically manipulate the front-end of your web page. Add/remove/change the content/attributes of an HTML element Change the

More information

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00

Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Page - Page 1 of 12 Mobile Web Design with HTML5, CSS3, JavaScript and JQuery Mobile Training BSP-2256 Length: 5 days Price: $ 2,895.00 Course Description Responsive Mobile Web Development is more

More information

Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY

Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY Advanced Web Development Duration: 6 Months SCOPE OF WEB DEVELOPMENT INDUSTRY Web development jobs have taken thе hot seat when it comes to career opportunities and positions as a Web developer, as every

More information

The purpose of jquery is to make it much easier to use JavaScript on your website.

The purpose of jquery is to make it much easier to use JavaScript on your website. jquery Introduction (Source:w3schools.com) The purpose of jquery is to make it much easier to use JavaScript on your website. What is jquery? jquery is a lightweight, "write less, do more", JavaScript

More information

Advantage of Jquery: T his file is downloaded from

Advantage of Jquery: T his file is downloaded from What is JQuery JQuery is lightweight, client side JavaScript library file that supports all browsers. JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,

More information

Some Issues on Ajax Invocation

Some Issues on Ajax Invocation Some Issues on Ajax Invocation I. Introduction AJAX is a set of technologies that together a website to be -or appear to be- highly responsive. This is achievable due to the following natures of AJAX[1]:

More information

Interactive Data Visualization for the Web Scott Murray

Interactive Data Visualization for the Web Scott Murray Interactive Data Visualization for the Web Scott Murray Technology Foundations Web technologies HTML CSS SVG Javascript HTML (Hypertext Markup Language) Used to mark up the content of a web page by adding

More information

Creating and Configuring a Custom Visualization Component

Creating and Configuring a Custom Visualization Component ORACLE CORPORATION Creating and Configuring a Custom Visualization Component Oracle Big Data Discovery Version 1.1.x Oracle Big Data Discovery v1.1.x Page 1 of 38 Rev 1 Table of Contents Overview...3 Process

More information

This matches a date in the MM/DD/YYYY format in the years 2011 2019. The date must include leading zeros.

This matches a date in the MM/DD/YYYY format in the years 2011 2019. The date must include leading zeros. Validating the date format There are plans to adapt the jquery UI Datepicker widget for use in a jquery Mobile site. At the time of this writing, the widget was still highly experimental. When a stable

More information

XML Processing and Web Services. Chapter 17

XML Processing and Web Services. Chapter 17 XML Processing and Web Services Chapter 17 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of http://www.funwebdev.com Web Development Objectives 1 XML Overview 2 XML Processing

More information

Client-Side Web Programming (Part 2) Robert M. Dondero, Ph.D. Princeton University

Client-Side Web Programming (Part 2) Robert M. Dondero, Ph.D. Princeton University Client-Side Web Programming (Part 2) Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn about: Client-side web programming, via... Multithreaded Java Applets AJAX 2 Part 1: Preliminary

More information

Best Practices for Rich Media Ads in Asynchronous Ad Environments

Best Practices for Rich Media Ads in Asynchronous Ad Environments Best Practices for Rich Media Ads in Asynchronous Ad Environments Released October 2008 These Best Practices have been developed by the IAB Rich Media & AJAX Working Group with guidance from the IAB Ad

More information

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T: 072 511 12 23

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T: 072 511 12 23 Microsoft SharePoint year SharePoint 2013: Search, Design and 2031 Publishing New SharePoint 2013: Solutions, Applications 2013 and Security New SharePoint 2013: Features, Delivery and 2010 Development

More information

IMRG Peermap API Documentation V 5.0

IMRG Peermap API Documentation V 5.0 IMRG Peermap API Documentation V 5.0 An Introduction to the IMRG Peermap Service... 2 Using a Tag Manager... 2 Inserting your Unique API Key within the Script... 2 The JavaScript Snippet... 3 Adding the

More information

Portals and Hosted Files

Portals and Hosted Files 12 Portals and Hosted Files This chapter introduces Progress Rollbase Portals, portal pages, portal visitors setup and management, portal access control and login/authentication and recommended guidelines

More information

CMSC434 TUTORIAL #3 HTML CSS JavaScript Jquery Ajax + Google AppEngine Mobile WebApp HTML5

CMSC434 TUTORIAL #3 HTML CSS JavaScript Jquery Ajax + Google AppEngine Mobile WebApp HTML5 CMSC434 TUTORIAL #3 HTML CSS JavaScript Jquery Ajax + Google AppEngine Mobile WebApp HTML5 JQuery Recap JQuery source code is an external JavaScript file

More information

Chapter 2: Interactive Web Applications

Chapter 2: Interactive Web Applications Chapter 2: Interactive Web Applications 2.1 Interactivity and Multimedia in the WWW architecture 2.2 Client-Side Multimedia in the Web (Example HTML5) 2.3 Interactive Server-Side Scripting (Example PHP)

More information

Building Ajax Applications with GT.M and EWD. Rob Tweed M/Gateway Developments Ltd

Building Ajax Applications with GT.M and EWD. Rob Tweed M/Gateway Developments Ltd Building Ajax Applications with GT.M and EWD Rob Tweed M/Gateway Developments Ltd Is GT.M old-fashioned? I am a physician working in the VA system. I also program in.net. Certainly the VAs informatics

More information

Client-side Web Engineering From HTML to AJAX

Client-side Web Engineering From HTML to AJAX Client-side Web Engineering From HTML to AJAX SWE 642, Spring 2008 Nick Duan 1 What is Client-side Engineering? The concepts, tools and techniques for creating standard web browser and browser extensions

More information

Microsoft Advertising adcenter Campaign Analytics Getting Started Guide

Microsoft Advertising adcenter Campaign Analytics Getting Started Guide Microsoft Advertising adcenter Campaign Analytics Getting Started Guide Contents Introduction... 3 What is Microsoft Advertising adcenter Campaign Analytics?... 3 Useful terms... 3 Overview... 4 Get Started...

More information

DIPLOMA IN WEBDEVELOPMENT

DIPLOMA IN WEBDEVELOPMENT DIPLOMA IN WEBDEVELOPMENT Prerequisite skills Basic programming knowledge on C Language or Core Java is must. # Module 1 Basics and introduction to HTML Basic HTML training. Different HTML elements, tags

More information

Security Model for the Client-Side Web Application Environments

Security Model for the Client-Side Web Application Environments Security Model for the Client-Side Web Application Environments May 24, 2007 Sachiko Yoshihama, Naohiko Uramoto, Satoshi Makino, Ai Ishida, Shinya Kawanaka, and Frederik De Keukelaere IBM Tokyo Research

More information

JAVASCRIPT AND COOKIES

JAVASCRIPT AND COOKIES JAVASCRIPT AND COOKIES http://www.tutorialspoint.com/javascript/javascript_cookies.htm Copyright tutorialspoint.com What are Cookies? Web Browsers and Servers use HTTP protocol to communicate and HTTP

More information

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation Credit-By-Assessment (CBA) Competency List Written Assessment Competency List Introduction to the Internet

More information

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o :

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o : Version: 0.1 Date: 20.07.2009 Author(s): Doddy Satyasree AJAX Person responsable: Doddy Satyasree Language: English Term Paper History Version Status Date 0.1 Draft Version created 20.07.2009 0.2 Final

More information

What about MongoDB? can req.body.input 0; var date = new Date(); do {curdate = new Date();} while(curdate-date<10000)

What about MongoDB? can req.body.input 0; var date = new Date(); do {curdate = new Date();} while(curdate-date<10000) Security What about MongoDB? Even though MongoDB doesn t use SQL, it can be vulnerable to injection attacks db.collection.find( {active: true, $where: function() { return obj.credits - obj.debits < req.body.input;

More information

A Tale of the Weaknesses of Current Client-side XSS Filtering

A Tale of the Weaknesses of Current Client-side XSS Filtering A Tale of the Weaknesses of Current Client-side XSS Filtering Sebastian Lekies (@sebastianlekies), Ben Stock (@kcotsneb) and Martin Johns (@datenkeller) Attention hackers! These slides are preliminary!

More information

Web Programming Step by Step

Web Programming Step by Step Web Programming Step by Step Lecture 13 Introduction to JavaScript Reading: 7.1-7.4 Except where otherwise noted, the contents of this presentation are Copyright 2009 Marty Stepp and Jessica Miller. Client-side

More information

Blackbox Reversing of XSS Filters

Blackbox Reversing of XSS Filters Blackbox Reversing of XSS Filters Alexander Sotirov alex@sotirov.net Introduction Web applications are the future Reversing web apps blackbox reversing very different environment and tools Cross-site scripting

More information

A FRAMEWORK FOR COLLECTING CLIENTSIDE PARADATA IN WEB APPLICATIONS

A FRAMEWORK FOR COLLECTING CLIENTSIDE PARADATA IN WEB APPLICATIONS A FRAMEWORK FOR COLLECTING CLIENTSIDE PARADATA IN WEB APPLICATIONS Natheer Khasawneh *, Rami Al-Salman *, Ahmad T. Al-Hammouri *, Stefan Conrad ** * College of Computer and Information Technology, Jordan

More information

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph Client: Brian Krzys June 17, 2014 Introduction Newmont Mining is a resource extraction company with a research and development

More information

10CS73:Web Programming

10CS73:Web Programming 10CS73:Web Programming Question Bank Fundamentals of Web: 1.What is WWW? 2. What are domain names? Explain domain name conversion with diagram 3.What are the difference between web browser and web server

More information

07/04/2014 NOBIL API. Version 3.0. Skåland Webservice Side 1 / 16

07/04/2014 NOBIL API. Version 3.0. Skåland Webservice Side 1 / 16 NOBIL API Version 3.0 Skåland Webservice Side 1 / 16 Client API version 3.0 NOBIL is a comprehensive and trustworthy database covering all charging stations in Norway, and is open for other countries,

More information

Facebook Twitter YouTube Google Plus Website Email. o Zooming and Panning. Panel. 3D commands. o Working with Canvas

Facebook Twitter YouTube Google Plus Website Email. o Zooming and Panning. Panel. 3D commands. o Working with Canvas WEB DESIGN COURSE COURSE COVERS: Photoshop HTML 5 CSS 3 Design Principles Usability / UI Design BOOTSTRAP 3 JAVASCRIPT JQUERY CSS Animation Optimizing of Web SYLLABUS FEATURES 2 Hours of Daily Classroom

More information

Google Analytics Social Plug-in Tracking

Google Analytics Social Plug-in Tracking smart. uncommon. ideas. Google Analytics Social Plug-in Tracking The Ultimate Guide {WEB} MEADIGITAL.COM {TWITTER} @MEADIGITAL {BLOG} MEADIGITAL.COM/CLICKOSITY {EMAIL} INFO@MEADIGITAL.COM In June 2011,

More information

Are AJAX Applications Vulnerable to Hack Attacks?

Are AJAX Applications Vulnerable to Hack Attacks? Are AJAX Applications Vulnerable to Hack Attacks? The importance of Securing AJAX Web Applications This paper reviews AJAX technologies with specific reference to JavaScript and briefly documents the kinds

More information

NetFlow for SouthWare NetLink

NetFlow for SouthWare NetLink NetFlow for SouthWare NetLink NetFlow is a technology add-on for the SouthWare NetLink module that allows customization of NetLink web pages without modifying the standard page templates or requests! You

More information

Salesforce Console Integration Toolkit Developer's Guide

Salesforce Console Integration Toolkit Developer's Guide Salesforce Console Integration Toolkit Developer's Guide Version 35.0, Winter 16 @salesforcedocs Last updated: December 17, 2015 Copyright 2000 2015 salesforce.com, inc. All rights reserved. Salesforce

More information

Core Ideas CHAPTER 1 PART. CHAPTER 2 Pre-Ajax JavaScript Communications Techniques CHAPTER 3 XMLHttpRequest Object CHAPTER 4 Data Formats

Core Ideas CHAPTER 1 PART. CHAPTER 2 Pre-Ajax JavaScript Communications Techniques CHAPTER 3 XMLHttpRequest Object CHAPTER 4 Data Formats Core Ideas CHAPTER 1 Introduction to Ajax I PART CHAPTER 2 Pre-Ajax JavaScript Communications Techniques CHAPTER 3 XMLHttpRequest Object CHAPTER 4 Data Formats ch01.indd 1 12/5/07 4:59:45 PM blind folio

More information

Web Development 1 A4 Project Description Web Architecture

Web Development 1 A4 Project Description Web Architecture Web Development 1 Introduction to A4, Architecture, Core Technologies A4 Project Description 2 Web Architecture 3 Web Service Web Service Web Service Browser Javascript Database Javascript Other Stuff:

More information

Short notes on webpage programming languages

Short notes on webpage programming languages Short notes on webpage programming languages What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is a markup language A markup language is a set of

More information

1. User Guide... 2 2. API overview... 4 2.1 addon - xml Definition... 4 2.1.1 addon.background... 5 2.1.1.1 addon.background.script... 5 2.1.

1. User Guide... 2 2. API overview... 4 2.1 addon - xml Definition... 4 2.1.1 addon.background... 5 2.1.1.1 addon.background.script... 5 2.1. User Guide............................................................................................. 2 API overview...........................................................................................

More information

Learning Web App Development

Learning Web App Development Learning Web App Development Semmy Purewal Beijing Cambridge Farnham Kbln Sebastopol Tokyo O'REILLY Table of Contents Preface xi 1. The Workflow 1 Text Editors 1 Installing Sublime Text 2 Sublime Text

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Introduction Client-Side scripting involves using programming technologies to build web pages and applications that are run on the client (i.e.

More information

AJAX and jmaki for Web 2.0 Development using Java. Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc.

AJAX and jmaki for Web 2.0 Development using Java. Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc. AJAX and jmaki for Web 2.0 Development using Java Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc. Agenda AJAX Basics > What is AJAX? > AJAX Interaction:Using AutoComplete Sample Application

More information

Finding XSS in Real World

Finding XSS in Real World Finding XSS in Real World by Alexander Korznikov nopernik@gmail.com 1 April 2015 Hi there, in this tutorial, I will try to explain how to find XSS in real world, using some interesting techniques. All

More information

WebIOPi. Installation Walk-through Macros

WebIOPi. Installation Walk-through Macros WebIOPi Installation Walk-through Macros Installation Install WebIOPi on your Raspberry Pi Download the tar archive file: wget www.cs.unca.edu/~bruce/fall14/webiopi-0.7.0.tar.gz Uncompress: tar xvfz WebIOPi-0.7.0.tar.gz

More information

Google Web Toolkit. Progetto di Applicazioni Software a.a. 2011/12. Massimo Mecella

Google Web Toolkit. Progetto di Applicazioni Software a.a. 2011/12. Massimo Mecella Google Web Toolkit Progetto di Applicazioni Software a.a. 2011/12 Massimo Mecella Introduction Ajax (Asynchronous JavaScript and XML) refers to a broad range of techniques Beyond the technical jargon,

More information

How to Code With MooTools

How to Code With MooTools Advanced Web Programming Jaume Aragonés Ferrero Department of Software and Computing Systems A compact JavaScript framework MOOTOOLS Index What is MooTools? Where to find? How to download? Hello World

More information

Vulnerability Scanning of WebApps & Course Reviews Lecture 12

Vulnerability Scanning of WebApps & Course Reviews Lecture 12 THE CHINESE UNIVERSITY OF HONG KONG IERG4210 Web Programming and Security Course Website: Live FB Feedback Group: https://course.ie.cuhk.edu.hk/~ierg4210/ https://fb.com/groups/ierg4210.2015spring/ Vulnerability

More information

Course Outline Basic Web Development

Course Outline Basic Web Development Course Outline Basic Web Development For Professionals Who Can Participate? Anyone can join who has the interest to get into the creative web development profession. Prerequisite: Technical Skill: Must

More information

«W3Schools Home Next Chapter» JavaScript is THE scripting language of the Web.

«W3Schools Home Next Chapter» JavaScript is THE scripting language of the Web. JS Basic JS HOME JS Introduction JS How To JS Where To JS Statements JS Comments JS Variables JS Operators JS Comparisons JS If...Else JS Switch JS Popup Boxes JS Functions JS For Loop JS While Loop JS

More information

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency 1. 420-PA3-AB Introduction to Computers, the Internet, and the Web This course is an introduction to the computer,

More information

Web Development CSE2WD Final Examination June 2012. (a) Which organisation is primarily responsible for HTML, CSS and DOM standards?

Web Development CSE2WD Final Examination June 2012. (a) Which organisation is primarily responsible for HTML, CSS and DOM standards? Question 1. (a) Which organisation is primarily responsible for HTML, CSS and DOM standards? (b) Briefly identify the primary purpose of the flowing inside the body section of an HTML document: (i) HTML

More information

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010 Introducing Apache Pivot Greg Brown, Todd Volkert 6/10/2010 Speaker Bios Greg Brown Senior Software Architect 15 years experience developing client and server applications in both services and R&D Apache

More information

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Rational Application Developer, Version 8.0, contains

More information

Cross Site Scripting (XSS) and PHP Security. Anthony Ferrara NYPHP and OWASP Security Series June 30, 2011

Cross Site Scripting (XSS) and PHP Security. Anthony Ferrara NYPHP and OWASP Security Series June 30, 2011 Cross Site Scripting (XSS) and PHP Security Anthony Ferrara NYPHP and OWASP Security Series June 30, 2011 What Is Cross Site Scripting? Injecting Scripts Into Otherwise Benign and Trusted Browser Rendered

More information

NoSQL web apps. w/ MongoDB, Node.js, AngularJS. Dr. Gerd Jungbluth, NoSQL UG Cologne, 4.9.2013

NoSQL web apps. w/ MongoDB, Node.js, AngularJS. Dr. Gerd Jungbluth, NoSQL UG Cologne, 4.9.2013 NoSQL web apps w/ MongoDB, Node.js, AngularJS Dr. Gerd Jungbluth, NoSQL UG Cologne, 4.9.2013 About us Passionate (web) dev. since fallen in love with Sinclair ZX Spectrum Academic background in natural

More information

Specify the location of an HTML control stored in the application repository. See Using the XPath search method, page 2.

Specify the location of an HTML control stored in the application repository. See Using the XPath search method, page 2. Testing Dynamic Web Applications How To You can use XML Path Language (XPath) queries and URL format rules to test web sites or applications that contain dynamic content that changes on a regular basis.

More information

Custom SharePoint Solutions with HTML and JavaScript In this book, you ll learn to: SOURCE CODE ONLINE

Custom SharePoint Solutions with HTML and JavaScript In this book, you ll learn to: SOURCE CODE ONLINE For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. Contents at a Glance About the Author xiii

More information

Web Same-Origin-Policy Exploration Lab

Web Same-Origin-Policy Exploration Lab Laboratory for Computer Security Education 1 Web Same-Origin-Policy Exploration Lab (Web Application: Collabtive) Copyright c 2006-2011 Wenliang Du, Syracuse University. The development of this document

More information

Web Programming Step by Step

Web Programming Step by Step Web Programming Step by Step Chapter 10 Ajax and XML for Accessing Data Except where otherwise noted, the contents of this presentation are Copyright 2009 Marty Stepp and Jessica Miller. 10.1: Ajax Concepts

More information

Create interactive web graphics out of your SAS or R datasets

Create interactive web graphics out of your SAS or R datasets Paper CS07 Create interactive web graphics out of your SAS or R datasets Patrick René Warnat, HMS Analytical Software GmbH, Heidelberg, Germany ABSTRACT Several commercial software products allow the creation

More information

Citrix StoreFront. Customizing the Receiver for Web User Interface. 2012 Citrix. All rights reserved.

Citrix StoreFront. Customizing the Receiver for Web User Interface. 2012 Citrix. All rights reserved. Citrix StoreFront Customizing the Receiver for Web User Interface 2012 Citrix. All rights reserved. Customizing the Receiver for Web User Interface Introduction Receiver for Web provides a simple mechanism

More information

Upgrade to Microsoft Web Applications

Upgrade to Microsoft Web Applications Upgrade to Microsoft Web Applications Description Customers demand beautiful, elegant apps that are alive with activity. Demonstrate your expertise at designing and developing the fast and fluid Store

More information

Tagging Guide: Website and Email Implementation. Contents

Tagging Guide: Website and Email Implementation. Contents Tagging Guide: Website and Email Implementation Contents About This Guide... 2 Your CiteID... 2 Website Implementation... 2 Tag Placement... 2 Example... 3 Email Implementation... 5 DNS Setup... 5 Tag

More information

Homework 3: Component & Interface Design

Homework 3: Component & Interface Design 1 Leah Staniorski 11/1/14 Homework 3: Component & Interface Design Introduction: Flexible Fitness will be a mobile application that allows users to create a personal profile. Through this personal profile,

More information

Lecture 9 Chrome Extensions

Lecture 9 Chrome Extensions Lecture 9 Chrome Extensions 1 / 22 Agenda 1. Chrome Extensions 1. Manifest files 2. Content Scripts 3. Background Pages 4. Page Actions 5. Browser Actions 2 / 22 Chrome Extensions 3 / 22 What are browser

More information

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX Oracle Application Express 3 The Essentials and More Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX Arie Geller Matthew Lyon J j enterpririse PUBLISHING BIRMINGHAM

More information

Visualizing an OrientDB Graph Database with KeyLines

Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines Visualizing an OrientDB Graph Database with KeyLines 1! Introduction 2! What is a graph database? 2! What is OrientDB? 2! Why visualize OrientDB? 3!

More information

^/ CS> KRIS. JAMSA, PhD, MBA. y» A- JONES & BARTLETT LEARNING

^/ CS> KRIS. JAMSA, PhD, MBA. y» A- JONES & BARTLETT LEARNING %\ ^/ CS> v% Sr KRIS JAMSA, PhD, MBA y» A- JONES & BARTLETT LEARNING Brief Contents Acknowledgments Preface Getting Started with HTML Integrating Images Using Hyperlinks to Connect Content Presenting Lists

More information

Specific API Usage Limitations... 7 Daily Limitation... 7 Concurrency Limitation... 7 Bulk Use... 7. API Description... 8 Site Data API...

Specific API Usage Limitations... 7 Daily Limitation... 7 Concurrency Limitation... 7 Bulk Use... 7. API Description... 8 Site Data API... Last update: May 2016 SolarEdge API SolarEdge API Contents SolarEdge API... 2 Contents... 2 General... 4 Purpose and scope... 4 Acronyms and abbreviations... 4 Introduction... 4 Technical Information...

More information

Art of Code Front-end Web Development Training Program

Art of Code Front-end Web Development Training Program Art of Code Front-end Web Development Training Program Pre-work (5 weeks) Codecademy HTML5/CSS3 and JavaScript tracks HTML/CSS (7 hours): http://www.codecademy.com/en/tracks/web JavaScript (10 hours):

More information

Performance Report for: http://singaporestockstrading.com/ Report generated: Friday, April 24, 2015, 7:29 AM -0700 (via API)

Performance Report for: http://singaporestockstrading.com/ Report generated: Friday, April 24, 2015, 7:29 AM -0700 (via API) The web should be fast. Executive Summary Performance Report for: http://singaporestockstrading.com/ Report generated: Friday, April, 5, : AM - (via API) Test Region: Vancouver, Canada Using: Firefox (Desktop)

More information

Spectrum Technology Platform

Spectrum Technology Platform Spectrum Technology Platform Version 8.0.0 SP2 RIA Getting Started Guide Information in this document is subject to change without notice and does not represent a commitment on the part of the vendor or

More information

The Smart Forms Web Part allows you to quickly add new forms to SharePoint pages, here s how:

The Smart Forms Web Part allows you to quickly add new forms to SharePoint pages, here s how: User Manual First of all, congratulations on being a person of high standards and fine tastes! The Kintivo Forms web part is loaded with features which provide you with a super easy to use, yet very powerful

More information

Comparison of JavaScript Graph Libraries

Comparison of JavaScript Graph Libraries UNIVERSITY OF WATERLOO Software Engineering Comparison of JavaScript Graph Libraries University of Waterloo Waterloo, Ontario prepared by Yuguang Zhang Student ID: 20311196 Userid: y279zhan 2B Software

More information

DESIGNING HTML HELPERS TO OPTIMIZE WEB APPLICATION DEVELOPMENT

DESIGNING HTML HELPERS TO OPTIMIZE WEB APPLICATION DEVELOPMENT Abstract DESIGNING HTML HELPERS TO OPTIMIZE WEB APPLICATION DEVELOPMENT Dragos-Paul Pop 1 Building a web application or a website can become difficult, just because so many technologies are involved. Generally

More information

Mobile Web Applications. Gary Dubuque IT Research Architect Department of Revenue

Mobile Web Applications. Gary Dubuque IT Research Architect Department of Revenue Mobile Web Applications Gary Dubuque IT Research Architect Department of Revenue Summary Times are approximate 10:15am 10:25am 10:35am 10:45am Evolution of Web Applications How they got replaced by native

More information

NewsletterAdmin 2.4 Setup Manual

NewsletterAdmin 2.4 Setup Manual NewsletterAdmin 2.4 Setup Manual Updated: 7/22/2011 Contact: corpinteractiveservices@crain.com Contents Overview... 2 What's New in NewsletterAdmin 2.4... 2 Before You Begin... 2 Testing and Production...

More information

It is highly recommended that you are familiar with HTML and JavaScript before attempting this tutorial.

It is highly recommended that you are familiar with HTML and JavaScript before attempting this tutorial. About the Tutorial AJAX is a web development technique for creating interactive web applications. If you know JavaScript, HTML, CSS, and XML, then you need to spend just one hour to start with AJAX. Audience

More information

Security Research Advisory IBM inotes 9 Active Content Filtering Bypass

Security Research Advisory IBM inotes 9 Active Content Filtering Bypass Security Research Advisory IBM inotes 9 Active Content Filtering Bypass Table of Contents SUMMARY 3 VULNERABILITY DETAILS 3 TECHNICAL DETAILS 4 LEGAL NOTICES 7 Active Content Filtering Bypass Advisory

More information

Developing Web Views for VMware vcenter Orchestrator

Developing Web Views for VMware vcenter Orchestrator Developing Web Views for VMware vcenter Orchestrator vcenter Orchestrator 5.1 This document supports the version of each product listed and supports all subsequent versions until the document is replaced

More information

AJAX The Future of Web Development?

AJAX The Future of Web Development? AJAX The Future of Web Development? Anders Moberg (dit02amg), David Mörtsell (dit01dml) and David Södermark (dv02sdd). Assignment 2 in New Media D, Department of Computing Science, Umeå University. 2006-04-28

More information