Skip to Content
JavaScript 经典实例:第三版
book

JavaScript 经典实例:第三版

by Adam D. Scott, Matthew MacDonald, Shelley Powers
September 2022
Intermediate to advanced
585 pages
8h 17m
Chinese
China Electric Power Press Ltd.
Content preview from JavaScript 经典实例:第三版
406
15
创建好画布上下文之后,就可以像在
HTML
页面的脚本中那样添加矩形、绘制路径、
创建弧形等。
15.4.4
扩展:使用画布还是
SVG
画布和
SVG
孰优孰劣,应该使用哪一个呢?帧型动画在
canvas
元素中速度更快,
浏览器只用重新绘制有变化的像素,无需重新创建整个场景。然而,如果必须支持
从智能手机到显示器等各种屏幕尺寸时,
canvas
元素在动画上的优势就会减弱。
SVG
的适应性更强。
SVG
的另一个优势是,它可以在库的强力辅助下实现丰富的数据可视化。不过,画
布在三维系统中应用广泛,例如
WebGL
同时使用
SVG
和画布是为了给
canvas
元素提供一种后备方案:
SVG
写入
DOM
持久存在,即使禁用
JavaScript
canvas
元素则不然。
15.5
音频文件开始播放时运行一个例程
15.5.1
问题
你想提供一个音频文件,在开始或结束播放时分享额外信息。
15.5.2
方案
使用
HTML5 audio
元素。
<audio
id="meadow" controls
>
<source
src="meadow.wav" type="audio/wav"
/>
<p><a
href="meadow.wav"
>
Meadow sounds
</a></p>
</audio>
捕获
play
事件(开始播放)或
ended
事件(结束播放)。
const
meadow = document.getElementById('meadow');
meadow.addEventListener('play', aboutAudio); ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

JavaScript Patterns

JavaScript Patterns

Stoyan Stefanov
JavaScript

JavaScript

David Flanagan
JavaScript

JavaScript

T. J. Crowder

Publisher Resources

ISBN: 9787519869601