SlideShare a Scribd company logo
2JavaScript
JavaScript HTML CSS
JavaScript
JavaScript CSS
Web CSS JavaScript
A CSS
1C 1998 Netscape Explorer 4
Web WaSP JavaScript
CSS
Web
WaSP CSS
CSS JavaScript Web
CSS 1998 JavaScript
WaSP
“WaSP
Web ”
WaSP Dreamweaver
DOM
WaSP http://www.webstandards.org
2
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
18 2
CSS
JavaScript
DOM 1C document.layers document.all CSS
CSS JavaScript
JavaScript
2002 Stuart Langridge unobtrusive scripting
CSS Web JavaScript
q
q JavaScript
q Web JavaScript
hook 4B JavaScript
q .js HTML
DHTML
Stuart http://www.kryogenix.org/code/browser/aqlists/
JavaScript JavaScript
3 JavaScript
JavaScript
JavaScript 2E
JavaScript
JavaScript JavaScript W3C DOM
4B
CSS HTML CSS JavaScript
unobtrusive ——
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
A CSS 19
Web 2-1
q HTML
q CSS
q JavaScript
2-1 Web HTML
CSS JavaScript
HTML HTML
<h1>
HTML
HTML
CSS HTML CSS
JavaScript HTML/CSS HTML
JavaScript
HTML HTML CSS JavaScript
CSS JavaScript
2-2
screen reader ——
CSS
”
JavaScript
”
HTML
”
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
20 2
2-2 JavaScript
JavaScript JavaScript
2E
q HTML CSS JavaScript
q CSS JavaScript .css .js
CSS JavaScript
.css
12 px 0.8 em .css
HTML
CSS
HTML JavaScript
q CSS HTML
q JavaScript HTML
CSS
”
HTML
”
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
B 21
q JavaScript CSS
JavaScript
B
HTML
CSS HTML <font>
CSS
CSS HTML JavaScript
JavaScript
CSS
JavaScript CSS CSS
JavaScript
HTML
9 CSS CSS
9E CSS class Name
CSS
// obj
obj.className += ' errorMessage';
// CSS
input.errorMessage {
border: 1px solid #cc0000;
}
CSS errorMessage
CSS
JavaScript Web HTML
<tr>
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
22 2
“XMLHTTP CSS width
HTML CSS
CSS
display: none
CSS
/
CSS
HTML <form>
C
JavaScript HTML
q JavaScript .js
HTML
q HTML .js
JavaScript .js HTML
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C 23
<script type="text/javascript">
function doAllKindsOfNiftyThings()
{
// JavaScript
}
</script>
</head>
<body>
<h1>My HTML page</h1>
[etc.]
<script type="text/javascript" src="nifty.js"></script>
</head>
<body>
<h1>My HTML page</h1>
[etc.]
// nifty.js
function doAllKindsOfNiftyThings()
{
// JavaScript
}
4D <script>
HTML
HTML JavaScript .js
HTML JavaScript 99%
HTML — —
<a href="home.html"
onMouseOver="mOv('home')"
onMouseOut="mOut('home')">Home</a>
.js
<a href="home.html">Home</a>
// .js
var nav = document.getElementById('navigation');
var navLinks = nav.getElementsByTagName('a');
for (var i=0;i<navLinks.length;i++)
{
navLinks[i].onmouseover = [code];
navLinks[i].onmouseout = [code];
}
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
24 2
id navigation <ul>
onmouseover onmouseout
JavaScript hook
ID 4B 7C
JavaScript
javascript
<a href="javascript:doAllKindsOfNiftyThings()">Do Nifty!</a>
onclick
doAllKindsOfNiftyThings() javascript:
.js onclick
<a href="somepage.html" id="nifty">Do Nifty!</a>
// .js
document.getElementById('nifty').onclick =
doAllKindsOfNiftyThings;
href URL
JavaScript 2F
JavaScript JavaScript
JavaScript Netscape 4
D
JavaScript
http ftp
——
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
D 25
CSS JavaScript
CSS JavaScript CSS JavaScript
hover mouseover/mouseout
1997 JavaScript
JavaScript 2-3
2-3 “News
JavaScript CSS
CSS JavaScript
<li><a href="#">News</a>
<ul>
<li><a href="#">Press Releases</a></li>
<li><a href="#">News Articles</a></li>
<li><a href="#">Photo Gallery</a></li>
<li><a href="#">Official Blog</a></li>
</ul>
</li>
// .css
li ul {display: none;}
li:hover ul {display: block}
<li> <ul> display: none
<li> li: hover display: block
JavaScript CSS Explorer 6
li hover
:hover CSS JavaScript
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
26 2
CSS JavaScript 7H JavaScript
mouseout CSS
:hover
:hover
CSS :hover JavaScript mouseover mouseout
mouseenter mouseleave Explorer 7B
JavaScript CSS CSS
JavaScript
Tab HTML
CSS
li:hover
<li>
JavaScript 7G JavaScript CSS
JavaScript
CSS JavaScript
CSS :hover JavaScript mouseover/mouseout
CSS JavaScript
<li> <li>
<ul> <ul>
CSS
li ul {display: none}
li:hover ul {display: block}
CSS <li>
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
D 27
——mouseover
mouseover JavaScript
1996 JavaScript mouseover
CSS
CSS mouseover
<a href="somewhere.html" id="somewhere">Somewhere</a>
<a href="somewhere_else.html" id="somewhere_else">Somewhere else</a>
a#somewhere {
background-image: url(pix/somewhere.gif);
}
a#somewhere_else {
background-image: url(pix/somewhere_else.gif);
}
a:hover#somewhere,
a:focus#somewhere,
a:active#somewhere {
background-image: url(pix/somewhere_hover.gif);
}
a:hover#somewhere_else,
a:focus#somewhere_else,
a:active#somewhere_else {
background-image: url(pix/somewhere_else_hover.gif);
}
mouseover CSS
mouseover mouseover
CSS
CSS
CSS mouseover
CSS
CSS mouseover
JavaScript mouseover
<a href="somewhere.html"
Dreamweaver Rollover Image ——
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
28 2
id="somewhere"><img src="pix/somewhere.gif" /></a>
<a href="somewhere_else.html"
id="somewhere_else"><img src="pix/somewhere_else.gif" /></a>
function initMouseOvers() {
var links = document.getElementsByTagName('img');
for (var i=0;i<links.length;i++) {
var moSrc = links[i].src.substring(0, links[i].src.lastIndexOf('.'));
moSrc += '_hover.gif';
links[i].moSrc = moSrc;
links[i].origSrc = links[i].src;
links[i].onmouseover = function () {
this.src = this.moSrc;
}
links[i].onmouseout = function () {
this.src = this.origSrc;
}
}
}
CSS
mouseover
mouseover JavaScript
CSS JavaScript
E
JavaScript
JavaScript
JavaScript
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
E 29
JavaScript
JavaScript
JavaScript
mouseover focus onmouseover
7B JavaScript
JavaScript
JavaScript
JavaScript alt
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
30 2
Explorer Mozilla
JavaScript
JavaScript http://www.access-matters.
com/ Bob Easton Mike Stenhouse James Edwards Derek Featherstone
JavaScript
JavaScript
JavaScript
JavaScript
JavaScript
JavaScript
Errors have been found
[ 100 103 ]
<form id="startOfForm">
if (!validForm) {
alert("Errors have been found");
location.hash = '#startOfForm';
}
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
E 31
focus blur mouseover
mouseout
James Edwards
http://www.access-matters.com/results-for-javascript-part-2-
navigating-forms/
chaotic
Web
Derek Featherstone JavaScript
JavaScript
JavaScript
http://www.boxofchocolates.ca/archives/2005/06/12/javascript-and-accessibility Derek
Featherstone
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
32 2
JavaScript
JavaScript 1 JavaScript
JavaScript
Web
JavaScript
JavaScript JavaScript
JavaScript
F
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
F 33
JavaScript
HTML
HTML
hard-code HTML
JavaScript
HTML
href
HTML href
<a href="#" onclick="showPopup('niceimage.jpg')">Nice image!</a>
noscript user
2C
JavaScript
<a href="niceimage.jpg" id="nice">Nice image!</a>
document.getElementById('nice').onclick = function () {
showPopup(this.href);
}
href script user
popup
JavaScript
Ajax
HTML
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
34 2
<a href="#" onclick="startUpAjaxStuff()">Commence coolness!</a>
Ajax
href
href JavaScript
var link = document.createElement('a');
link.href = '#';
link.onclick = startUpAjaxStuff;
var linkText = document.createTextNode('Commence coolness!');
link.appendChild(linkText);
document.body.appendChild(link);
link.href # # href
href a
HTML
JavaScript JavaScript
onclick href="#"
JavaScript
JavaScript
JavaScript
CSS
rel <tr> CSS
tr[rel] {
display: none;
}
<tr>
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
F 35
JavaScript <tr>
JavaScript
HTML
replace()
<head>
<title>Noscript page</title>
<script type="text/javascript">
var isSupported = [check JavaScript support];
if (isSupported)
location.replace('scriptpage.html');
</script>
</head>
location.href location.href
6C
2-4
2-4 location.href
location.href
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
36 2
location.replace()
2-5
2-5 location.replace()
mouseover focus
drag-and-drop
7B
keyboard-accessible
mouseover
focus focus
keyboard-friendly HTML
focus
<noscript>
Web JavaScript
<noscript>
location.
replace()
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
G 37
q JavaScript HTML
q JavaScript JavaScript
<noscript>
<noscript>
JavaScript W3C DOM XMLHttpRequest
<noscript>
JavaScript
<noscript>
G
8 6
2
8 7
1 250
2-6
2-6
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
38 2
1 250
JavaScript 2-7
2-7
2-8
2-8
class accessibility
——
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
G 39
2-9
.accessibility {display: none}
2-9
JavaScript
1A
2-10
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
40 2
2-10
JavaScript
CSS JavaScript
2-11
2-11
JavaScript
Explorer Mozilla
CSS
1/3
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
G 41
E-mail
HTML JavaScript
JavaScript
<label>
<tr> HTML
<tr>
<td class="number"><input /></td>
<td class="description">English sandwich</td>
<td class="extra">bacon, cheese, lettuce, tomato</td>
<td class="empty">freshly fried</td>
</tr>
<input>
HTML
<tr> <input> name JavaScript
<input> <form>
<tr> <form>
<form method=post action="/cgi-bin/formmail/formmail.pl">
<table class="search">
<tbody id="ordered">
<tr>
<td colspan="3"><h3>Your order<h3></td>
<td class="extra" rowspan="200">
<div id="orderForm">
//
name ——
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
42 2
</div>
</td>
</tr>
// <tr>
</tbody>
</table>
</form>
name
q name <form>
name
q JavaScript <input />
<input />
XMLHTTP
XMLHTTP
PHP
XML HTML 2-12
2-12 “XMLHTTP ”
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
G 43
q HTML <input type="image">
HTML PHP
q JavaScript input action
XML PHP
Web
q
q
JavaScript
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m
C
lick
to
buy
N
O
W
!
PDF-XCHANGE
w
w
w
.docu-track.c
o
m

More Related Content

PDF
Ppk on javascript_chapter_1
PDF
DRIVERS_Early_Child_Development_Final_Report_Appendices1
PPTX
2. kenalilah potensimu
PPT
1362465385 managinig neuropathic ulcer skke (1)
PDF
البنوك المركزية تعمل على إنعاش حركة قطاع السلع
PPTX
Corn insects A Lecture By Mr Allah Dad Khan
PPTX
Tullio Cofrancesco - AGM 2015 - CFO Address - Office Brands Limited
PDF
Business Halloween Marketing
Ppk on javascript_chapter_1
DRIVERS_Early_Child_Development_Final_Report_Appendices1
2. kenalilah potensimu
1362465385 managinig neuropathic ulcer skke (1)
البنوك المركزية تعمل على إنعاش حركة قطاع السلع
Corn insects A Lecture By Mr Allah Dad Khan
Tullio Cofrancesco - AGM 2015 - CFO Address - Office Brands Limited
Business Halloween Marketing

Viewers also liked (9)

PPT
Isaac Halwani Enjoys Cooking
DOCX
CV BudimanP- 2015
PDF
Массивы
PDF
Session 3 case studies 2
PPTX
пермское нпо 21.10
DOCX
Curriculum vitae michaelvisschers-october2015v3_eng
PPTX
SHA Bulletin 10 27-15
PPTX
26 27 28
PPTX
PORTFOLIO- Fazal
Isaac Halwani Enjoys Cooking
CV BudimanP- 2015
Массивы
Session 3 case studies 2
пермское нпо 21.10
Curriculum vitae michaelvisschers-october2015v3_eng
SHA Bulletin 10 27-15
26 27 28
PORTFOLIO- Fazal
Ad

Similar to Ppk on javascript_chapter_2 (20)

PDF
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
PDF
Dive Into HTML5
PDF
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
PDF
The Complete Internet and World Wide Web Cyber Classroom 2nd ed Edition Deitel
PPTX
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
PPT
Html5 Whats around the bend
PDF
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
PDF
HTML5がIE10/Windows 8にもたらすもの
PDF
East of Toronto .NET Usergroup - Put the 5 in HTML
PDF
Change by HTML5
PDF
Html5/CSS3
PDF
Giáo trình học Html5/Css3
PDF
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
PDF
Beginner & Intermediate Guide to HTML5/CSS3 In Drupal
PPTX
Toronto HTML5 User Group Meet Up #2 – Application Development with HTML 5
PDF
Finding harmony in web development
PDF
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
PPTX
Evolution of the web
PPT
Decoding the Web
PDF
HTML5とIE10とWindows 8 in OSC2012会津
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
Dive Into HTML5
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
The Complete Internet and World Wide Web Cyber Classroom 2nd ed Edition Deitel
Rich and Beautiful: Making Attractive Apps in HTML5 [Wpg 2013]
Html5 Whats around the bend
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
HTML5がIE10/Windows 8にもたらすもの
East of Toronto .NET Usergroup - Put the 5 in HTML
Change by HTML5
Html5/CSS3
Giáo trình học Html5/Css3
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
Beginner & Intermediate Guide to HTML5/CSS3 In Drupal
Toronto HTML5 User Group Meet Up #2 – Application Development with HTML 5
Finding harmony in web development
Internet World Wide Web How to Program 2nd Edition Harvey M. Deitel
Evolution of the web
Decoding the Web
HTML5とIE10とWindows 8 in OSC2012会津
Ad

More from Da Zhao (11)

PDF
Ecmascript 5rd 语法
PDF
Javascript core
PDF
Javascript 权威指南(第四版)
PDF
Ajax基础教程
PDF
高性能网站建设指南
DOC
Linux服务器服务配置说明
DOCX
Centos 5.5_图形安装教程
PDF
Expect中文版教程
PDF
精通CSS
PDF
CSS权威指南
PDF
Lamp安全全攻略
Ecmascript 5rd 语法
Javascript core
Javascript 权威指南(第四版)
Ajax基础教程
高性能网站建设指南
Linux服务器服务配置说明
Centos 5.5_图形安装教程
Expect中文版教程
精通CSS
CSS权威指南
Lamp安全全攻略

Recently uploaded (20)

PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Modernizing your data center with Dell and AMD
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
cuic standard and advanced reporting.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPT
Teaching material agriculture food technology
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Empathic Computing: Creating Shared Understanding
“AI and Expert System Decision Support & Business Intelligence Systems”
Spectral efficient network and resource selection model in 5G networks
Chapter 3 Spatial Domain Image Processing.pdf
MYSQL Presentation for SQL database connectivity
Building Integrated photovoltaic BIPV_UPV.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Modernizing your data center with Dell and AMD
Review of recent advances in non-invasive hemoglobin estimation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
cuic standard and advanced reporting.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Teaching material agriculture food technology
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Empathic Computing: Creating Shared Understanding

Ppk on javascript_chapter_2

  • 1. 2JavaScript JavaScript HTML CSS JavaScript JavaScript CSS Web CSS JavaScript A CSS 1C 1998 Netscape Explorer 4 Web WaSP JavaScript CSS Web WaSP CSS CSS JavaScript Web CSS 1998 JavaScript WaSP “WaSP Web ” WaSP Dreamweaver DOM WaSP http://www.webstandards.org 2 C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 2. 18 2 CSS JavaScript DOM 1C document.layers document.all CSS CSS JavaScript JavaScript 2002 Stuart Langridge unobtrusive scripting CSS Web JavaScript q q JavaScript q Web JavaScript hook 4B JavaScript q .js HTML DHTML Stuart http://www.kryogenix.org/code/browser/aqlists/ JavaScript JavaScript 3 JavaScript JavaScript JavaScript 2E JavaScript JavaScript JavaScript W3C DOM 4B CSS HTML CSS JavaScript unobtrusive —— C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 3. A CSS 19 Web 2-1 q HTML q CSS q JavaScript 2-1 Web HTML CSS JavaScript HTML HTML <h1> HTML HTML CSS HTML CSS JavaScript HTML/CSS HTML JavaScript HTML HTML CSS JavaScript CSS JavaScript 2-2 screen reader —— CSS ” JavaScript ” HTML ” C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 4. 20 2 2-2 JavaScript JavaScript JavaScript 2E q HTML CSS JavaScript q CSS JavaScript .css .js CSS JavaScript .css 12 px 0.8 em .css HTML CSS HTML JavaScript q CSS HTML q JavaScript HTML CSS ” HTML ” C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 5. B 21 q JavaScript CSS JavaScript B HTML CSS HTML <font> CSS CSS HTML JavaScript JavaScript CSS JavaScript CSS CSS JavaScript HTML 9 CSS CSS 9E CSS class Name CSS // obj obj.className += ' errorMessage'; // CSS input.errorMessage { border: 1px solid #cc0000; } CSS errorMessage CSS JavaScript Web HTML <tr> C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 6. 22 2 “XMLHTTP CSS width HTML CSS CSS display: none CSS / CSS HTML <form> C JavaScript HTML q JavaScript .js HTML q HTML .js JavaScript .js HTML C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 7. C 23 <script type="text/javascript"> function doAllKindsOfNiftyThings() { // JavaScript } </script> </head> <body> <h1>My HTML page</h1> [etc.] <script type="text/javascript" src="nifty.js"></script> </head> <body> <h1>My HTML page</h1> [etc.] // nifty.js function doAllKindsOfNiftyThings() { // JavaScript } 4D <script> HTML HTML JavaScript .js HTML JavaScript 99% HTML — — <a href="home.html" onMouseOver="mOv('home')" onMouseOut="mOut('home')">Home</a> .js <a href="home.html">Home</a> // .js var nav = document.getElementById('navigation'); var navLinks = nav.getElementsByTagName('a'); for (var i=0;i<navLinks.length;i++) { navLinks[i].onmouseover = [code]; navLinks[i].onmouseout = [code]; } C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 8. 24 2 id navigation <ul> onmouseover onmouseout JavaScript hook ID 4B 7C JavaScript javascript <a href="javascript:doAllKindsOfNiftyThings()">Do Nifty!</a> onclick doAllKindsOfNiftyThings() javascript: .js onclick <a href="somepage.html" id="nifty">Do Nifty!</a> // .js document.getElementById('nifty').onclick = doAllKindsOfNiftyThings; href URL JavaScript 2F JavaScript JavaScript JavaScript Netscape 4 D JavaScript http ftp —— C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 9. D 25 CSS JavaScript CSS JavaScript CSS JavaScript hover mouseover/mouseout 1997 JavaScript JavaScript 2-3 2-3 “News JavaScript CSS CSS JavaScript <li><a href="#">News</a> <ul> <li><a href="#">Press Releases</a></li> <li><a href="#">News Articles</a></li> <li><a href="#">Photo Gallery</a></li> <li><a href="#">Official Blog</a></li> </ul> </li> // .css li ul {display: none;} li:hover ul {display: block} <li> <ul> display: none <li> li: hover display: block JavaScript CSS Explorer 6 li hover :hover CSS JavaScript C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 10. 26 2 CSS JavaScript 7H JavaScript mouseout CSS :hover :hover CSS :hover JavaScript mouseover mouseout mouseenter mouseleave Explorer 7B JavaScript CSS CSS JavaScript Tab HTML CSS li:hover <li> JavaScript 7G JavaScript CSS JavaScript CSS JavaScript CSS :hover JavaScript mouseover/mouseout CSS JavaScript <li> <li> <ul> <ul> CSS li ul {display: none} li:hover ul {display: block} CSS <li> C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 11. D 27 ——mouseover mouseover JavaScript 1996 JavaScript mouseover CSS CSS mouseover <a href="somewhere.html" id="somewhere">Somewhere</a> <a href="somewhere_else.html" id="somewhere_else">Somewhere else</a> a#somewhere { background-image: url(pix/somewhere.gif); } a#somewhere_else { background-image: url(pix/somewhere_else.gif); } a:hover#somewhere, a:focus#somewhere, a:active#somewhere { background-image: url(pix/somewhere_hover.gif); } a:hover#somewhere_else, a:focus#somewhere_else, a:active#somewhere_else { background-image: url(pix/somewhere_else_hover.gif); } mouseover CSS mouseover mouseover CSS CSS CSS mouseover CSS CSS mouseover JavaScript mouseover <a href="somewhere.html" Dreamweaver Rollover Image —— C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 12. 28 2 id="somewhere"><img src="pix/somewhere.gif" /></a> <a href="somewhere_else.html" id="somewhere_else"><img src="pix/somewhere_else.gif" /></a> function initMouseOvers() { var links = document.getElementsByTagName('img'); for (var i=0;i<links.length;i++) { var moSrc = links[i].src.substring(0, links[i].src.lastIndexOf('.')); moSrc += '_hover.gif'; links[i].moSrc = moSrc; links[i].origSrc = links[i].src; links[i].onmouseover = function () { this.src = this.moSrc; } links[i].onmouseout = function () { this.src = this.origSrc; } } } CSS mouseover mouseover JavaScript CSS JavaScript E JavaScript JavaScript JavaScript C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 13. E 29 JavaScript JavaScript JavaScript mouseover focus onmouseover 7B JavaScript JavaScript JavaScript JavaScript alt C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 14. 30 2 Explorer Mozilla JavaScript JavaScript http://www.access-matters. com/ Bob Easton Mike Stenhouse James Edwards Derek Featherstone JavaScript JavaScript JavaScript JavaScript JavaScript JavaScript Errors have been found [ 100 103 ] <form id="startOfForm"> if (!validForm) { alert("Errors have been found"); location.hash = '#startOfForm'; } C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 15. E 31 focus blur mouseover mouseout James Edwards http://www.access-matters.com/results-for-javascript-part-2- navigating-forms/ chaotic Web Derek Featherstone JavaScript JavaScript JavaScript http://www.boxofchocolates.ca/archives/2005/06/12/javascript-and-accessibility Derek Featherstone C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 16. 32 2 JavaScript JavaScript 1 JavaScript JavaScript Web JavaScript JavaScript JavaScript JavaScript F C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 17. F 33 JavaScript HTML HTML hard-code HTML JavaScript HTML href HTML href <a href="#" onclick="showPopup('niceimage.jpg')">Nice image!</a> noscript user 2C JavaScript <a href="niceimage.jpg" id="nice">Nice image!</a> document.getElementById('nice').onclick = function () { showPopup(this.href); } href script user popup JavaScript Ajax HTML C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 18. 34 2 <a href="#" onclick="startUpAjaxStuff()">Commence coolness!</a> Ajax href href JavaScript var link = document.createElement('a'); link.href = '#'; link.onclick = startUpAjaxStuff; var linkText = document.createTextNode('Commence coolness!'); link.appendChild(linkText); document.body.appendChild(link); link.href # # href href a HTML JavaScript JavaScript onclick href="#" JavaScript JavaScript JavaScript CSS rel <tr> CSS tr[rel] { display: none; } <tr> C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 19. F 35 JavaScript <tr> JavaScript HTML replace() <head> <title>Noscript page</title> <script type="text/javascript"> var isSupported = [check JavaScript support]; if (isSupported) location.replace('scriptpage.html'); </script> </head> location.href location.href 6C 2-4 2-4 location.href location.href C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 20. 36 2 location.replace() 2-5 2-5 location.replace() mouseover focus drag-and-drop 7B keyboard-accessible mouseover focus focus keyboard-friendly HTML focus <noscript> Web JavaScript <noscript> location. replace() C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 21. G 37 q JavaScript HTML q JavaScript JavaScript <noscript> <noscript> JavaScript W3C DOM XMLHttpRequest <noscript> JavaScript <noscript> G 8 6 2 8 7 1 250 2-6 2-6 C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 22. 38 2 1 250 JavaScript 2-7 2-7 2-8 2-8 class accessibility —— C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 23. G 39 2-9 .accessibility {display: none} 2-9 JavaScript 1A 2-10 C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 24. 40 2 2-10 JavaScript CSS JavaScript 2-11 2-11 JavaScript Explorer Mozilla CSS 1/3 C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 25. G 41 E-mail HTML JavaScript JavaScript <label> <tr> HTML <tr> <td class="number"><input /></td> <td class="description">English sandwich</td> <td class="extra">bacon, cheese, lettuce, tomato</td> <td class="empty">freshly fried</td> </tr> <input> HTML <tr> <input> name JavaScript <input> <form> <tr> <form> <form method=post action="/cgi-bin/formmail/formmail.pl"> <table class="search"> <tbody id="ordered"> <tr> <td colspan="3"><h3>Your order<h3></td> <td class="extra" rowspan="200"> <div id="orderForm"> // name —— C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 26. 42 2 </div> </td> </tr> // <tr> </tbody> </table> </form> name q name <form> name q JavaScript <input /> <input /> XMLHTTP XMLHTTP PHP XML HTML 2-12 2-12 “XMLHTTP ” C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m
  • 27. G 43 q HTML <input type="image"> HTML PHP q JavaScript input action XML PHP Web q q JavaScript C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m C lick to buy N O W ! PDF-XCHANGE w w w .docu-track.c o m