throbber
eve o r~entwit
`
`~~.~~~.~
`
`~~~~,'~.
`
`i' i ! t 1 1
`
`# 1
`
`! ~
`
`'i X11 ~ 1
`
`Duane K.~ields
`Mark A. Kolb
`Shawn Bayern
`
`ll~ MANNING
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`001
`
`

`
`Web Develo~~e~t with
`~~~ ev~~e~ ~ es
`
`SECOND EDITION
`
`DUANE K. FIELDS
`MARK A. KOLB
`~.
`
`MANNING
`Greenwich
`(74° w. long.)
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`002
`
`

`
`For online information and ordering of this and other Manning books,
`go to www.znanning.com. The publisher offers discounts on this book
`when ordered in quantity. For more information, please contact:
`Special Sales Department
`Manning Publications Co.
`209 Bruce Park Avenue
`Greenwich, CT 06830
`
`Fax: (203) 661-9018
`email: orders@manning.com
`
`02002 by Manning Publications Co. All rights reserved.
`No part of this publication maybe reproduced, stored in a retrieval system, or transmitted,
`in any form or by means electronic, mechanical, photocopying, or otherwise, without prior
`written permission of the publisher.
`Many of the designations used by manufacturers and sellers to distinguish their products are
`claimed as trademarks. Where those designations appear in the book, and Manning
`Publications was aware of a trademark claim, the designations have been printed in initial
`caps or all caps.
`O Recognizing the importance of preserving what has been written, it is Manning's policy to have the
`books we publish printed on acid-free paper, and we exert our best efforts to that end.
`
`Manning Publications Co.
`209 Bruce Park Avenue
`Greenwich, CT 06830
`
`Copyeditor:
`Typesetter:
`Cover designer:
`
`Elizabeth Martin
`Tony Roberts
`Leslie Haimes
`
`Printed in the United States of America
`2 3 4 5 6 7 8 9 10 — VHG — 04 03 02
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`003
`
`

`
`Extev~nal content ~
`
`483
`
`technique, it allows static HTML pages to include soiree form of dynamic content,
`even if the local server does not support a technology such as JSP.
`
`WARNING One downside is that older browsers don't support external style sheets or
`JavaScript source, however the 4.0 and 5.0 browsers do, as do some of the
`3.0 browsers. If you plan to rely on these features in your site, make certain
`that your audience can take advantage of them.
`
`16.4.E JSP style sheets
`The most common use for style sheets in web publishing is to provide a standazd-
`ized look and feel for all of the pages on the site, without having to stylize the col-
`ors, fonts, and layout of each page separately. To this end browsers can make use of
`the <link> tag to embed references to external style sheet documents into ~heiz
`HTML. Typically, the link tag looks like this:
`
`clink rel="stylesheet" type="text/css" href="style.css">
`It is important to understand that the href attribute that defines the external style
`sheet is pointing to the UKL of a document somewhere out on the network. The
`document doesn't have to be local to the current server, and it doesn't even have to
`have a .css extension. After loading the initial page, the browser will spawn an addi-
`tional request to download the style sheet. Regardless of the location or file exten-
`sion, the browser will expect what comes back from the server to be only a list of
`CSS style directives. No HTML is allowed. A typical style sheet then might contain
`something like the following:
`
`P { color: red; font-size=l4pt; margin-left: gem; }
`P.hilite { background-color: yellow; }
`Since this style information is just text, we are free to create our own style sheet
`through JSP, allowing us to customize the style on aper-request, orper-session basis.
`We're not going to go into the details of how style sheets work. If you aren't familiar
`with -them all you need to know is that they tell the browser how different content
`elements (such as tables, paragraphs, etc.) should look and be laid out. In this simple
`example (listing 16.7) we'll create a style sheet that creates a random color scheme
`by selecting a new combination of background, text, and anchor colors for each
`page request.
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`004
`
`

`
`484
`
`CHAPTER 16
`Genev~atin8 non-HTML content
`
`ao@ page contentType="text/css" o>
`<o!
`String[] colors = { ~~red", "green", "blue", "yellow", "black", "white" };
`
`private String getRandomColor() {
`return colors[(int)(Math.random() * colors.length)];
`
`} %
`
`>
`
`BODY { background-color: <%= getRandomColor() o> }
`P { color: <o= getRandomColor() %> }
`A:link { color: <o= getRandomColor() %> }
`A:active { color: <a= getRandomColor() o> }
`A:visited { color: <o= getRandomColor() o> }
`
`You can load this page into your browser directly to see the results. Notice how it
`changes with each reload. (If it doesn't, you'll probably need to modify your brows-
`ers caching behavior to assure it reloads the style sheet from the network each time,
`or see the caching section in this chapter for information on how to have the page
`direct the browser's caching behavior itself . Here's atypical result:
`
`BODY { background-color: green }
`P { color: black }
`A:link { color: yellow }
`A:active { color: red }
`A:visited { color: blue }
`
`To reference this style sheet in our documents (table 16.8), we make use of the link
`tag, substituting the URL of the dynamic style sheet we just created:
`
`Listing 16.8 random.html
`
`<html>
`<head>
`<lirik rel="stylesheet" type="text/css" href="random-css.jsp">
`</head>
`
`<body>
`<p>
`Welcome to a page with a random style.
`</p>
`c/body>
`</html>
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`005
`
`

`
`,,
`
`F_,.xtev~nczl contevct (
`
`4R5
`
`This style sheet can be referenced by any HTML document, including static HTML
`and JSP files. It is now accessible from other servers as well. Dynamic style sheets are
`a useful way to modify the look and feel of your existing pages without having to
`convert the entire site's web pages to jSP. There are layout effects that can't be done
`without style sheets, like carefully controlling the font size, margins, and borders ~~f
`the content. We could take advantage of this technique to allow the user to cc~ntroi
`the style of the page recording their choices in their session, and by retrieving this
`information to construct our dynamic style sheet. Another useful technic~iie is
`adapting the style sheet based on the platform or the vendor of the client's browser.
`For example, we might need to bump up the default font size for UNIX brotivsers,
`or modify a table style to achieve parity between Netscape and Internet Explorer.
`
`16.4.2 JavaScript
`Like style sheets, JavaScript can be either included directly in the HTML page, or
`imported by the browser at regl~est time. The src attribute of the <script> tag can
`be used to specify an external file that contains javaScript functions, variables, or
`commands that should be made available to the page. Typically, this capability is
`used to create libraries of JavaScript functions that are available to multiple pages on
`the site. A typical reference looks like this:
`
`<script src="loans.js">
`</script>
`And the file loans.js (which could be anywhere on the network) would contain func-
`tions to calculate loan payments, interest rates, and so forth. As with style sheets this
`file could be a JSP that modified the commands or functions based on the current
`users, their browsers, and so on. For example, the functions for calculating loans
`might take the user's local interest or tax rates into account. This provides a way of
`centralizing application logic in asingle-client side module, by introducing server-
`side dependencies.
`A more interesting technique is using dynamic imported JavaScript to pass infor-
`mation between the client and the server. In this example we'll pretend that we run
`an online bookstore and we are loolung for a way to provide a "book of the month"
`that our associates and partners can promote through their own web sites. It's sim-
`ple enough to select a book each month, but we want a way that the partners can
`promote it without having to manually change the book's information each month
`and would like to display the current number available for purchase. We also can't
`assume that every affiliate site is running a JSP capable server or has access to serv-
`lets. What we can do is provide a dynamic javaScript library on our server that can
`
`WhatsApp/Facebook Ex. 1023
`IPR2015-00740
`
`006

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket