Safari 11.0

兼容性

Safari 11.0 可运行于 iOS 11.0 和 macOS 10.1版本的系统环境,同时在macOS 10.12.6 和 10.11.6版本中也可以使用。

Highlights of Safari 11.0

Safari 11.0的亮点

  • 基于WebRTC标准实现了P2P Web视频会议。

  • 新增了一些用来测试代码和网络性能的策略。

  • 支持 WebAssembly。使用最新的 WebAssembly 格式编写代码,将令你的Web应用体积更小,加载更快。

  • 支持新的 WKWebView 接口。 在应用中可以捕获快照,处理自定义URL方案,更有效地管理cookie,以及进行Web内容过滤了。

App开发者

WebKit

  • 处理自定义 URL Scheme

    • 新增 WKURLSchemeHandler协议, 该协议用于处理自定义的 URL Scheme。
  • 更有效的cookie管理

    • 新增 WKHTTPCookieStore对象, 该对象用来管理与特定的 WKWebsiteDataStore 相关的HTTP cookie。
  • 支持快照

    • WKWebView 新增 takeSnapshot(with:completionHandler:) 方法, 该方法用于捕捉网页可见部分的快照.
  • 基于规则的内容处理

    • 新增 WKContentRuleList 对象, 该对象提供了一组适用于Web内容的规则的列表。

SafariServices

  • 更新了 SFSafariViewController

    • 新增了修改用于取消view controller的按钮的题目的功能;新增了从共享表中排除活动项的功能;新增了禁止将栏折叠的功能。

Web 开发者

多媒体

  • 持使用WebRTC进行实时通信

  • 摄像头和麦克风权限

    • 新增对 Media Capture API 的支持。
    • 支持网站访问用户设备的摄像头和麦克风(需要取得用户权限)。

Web APIs

  • WebAssembly

    • 新增对 WebAssembly 的支持, 它是一种快速,高效,便携,安全的编码格式。
  • Safari升级了最新版本的 WebCrypto API。

    • 包括新的加密算法,如: AES-CFB, AES-GCM, ECDH, and PBKDF2。
    • SubtleCrypto 现在不需要添加 'webkit'前缀了并且是异步的。
  • 资源计时(Resource timing)

    • 收集网页上每一个资源的全部网络计时数据的详细测量结果。

    • 新增对资源计时2级, 性能计时2级,和用户计时2级等规范的支持。

    • 新增了一些策略,用来帮助开发人员确认Web应用程序的客户端性能问题。

  • iOS上的拖放

    • 在iOS系统新增了多个拖放事件: dragstartdragenterdragoverdragexitdragleavedragenddrop

Web 应用

  • 更新了WebKit对主屏幕应用的支持

    • 保存在主屏幕的应用现在支持现代WebKit的所有功能特性,如快速点击(Fast-Tap),滚动捕捉(scroll snapping)和新的视觉视口行为。

安全和隐私

  • 通过防止跨站跟踪,加强用户隐私

    • 新增了“智能跟踪预防”(Intelligent Tracking Prevention)功能,它会升级默认的cookie和网站数据的策略,以此来隔离和删除那些有能力进行跨站跟踪用户的网站的cookie和数据。
  • 更新文件限制,默认情况下阻拦跨域访问文件的行为

    • CORS和跨域访问 file: //现在会被阻拦下来,除非选中 Develop 菜单下的 'Disable Local File Restrictions(禁用本地文件限制)' 选项。

文本特性

  • 支持可变字体(Variable fonts)

    • 新增对 CSS Fonts Module 4 规范中定义的字体变形(font variations)的支持。
  • 支持 CSS Stroke

    • 新增对 CSS Stroke规范中定义的一些属性的支持,比如: paint-orderstroke-linejoinstroke-linecapstroke-colorstroke-widthstroke-miterlimit

Web检查工具

  • 检查 WebSocket 连接

    • 新增对 WebSocket连接和消息的调试。
  • 由右向左的布局

    • 当首选语言为由右向左书写的语言时, 浏览器的检查元素界面会使用右向左布局的模式。
  • DOM 断点 和 XHR 断点

    • 在代码中添加了断点之后,当该代码修改了DOM中的元素,或者向某个资源发送了一个 XHRHtpRequest 请求时,断点会暂停脚本的执行,同时展示出该段代码。

Safari 扩展

  • content blocker rules

    • 新增了 if-top-url 和 unless-top-url 这两个trigger,它们会在正则表达式和文档的URL全部匹配时执行。

版权声明

本译文仅用于学习、研究和交流目的,欢迎非商业转载。转载请注明出处、译者和众成翻译的完整链接。要获取包含以上信息的本文Markdown源文本,请点击这里

Safari 11.0 已发布,新特性都在这儿了!的更多相关文章

  1. What's new in Safari 11.0

    导语: Safari 11.0 的亮点 网络会议.使用WebRTC标准实现对等会议. 开发调试工具增强.使用用于测量代码和网络性能的新工具来测试代码. WebAssembly.当使用新的WebAsse ...

  2. Spring Boot 2.0正式发布,新特性解读

    作者|翟永超 Spring Boot 2.0 来啦,有哪些新特性?升级吗? 写在前面 北京时间 3 月 1 日,经过漫长的等待之后,Spring Boot 2.0 正式发布.作为 Spring 生态中 ...

  3. MySQL 8.0.2复制新特性(翻译)

    译者:知数堂星耀队 MySQL 8.0.2复制新特性 MySQL 8 正在变得原来越好,而且这也在我们MySQL复制研发团队引起了一阵热潮.我们一直致力于全面提升MySQL复制,通过引入新的和一些有趣 ...

  4. (数据科学学习手札73)盘点pandas 1.0.0中的新特性

    本文对应脚本及数据已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 毫无疑问pandas已经成为基于Pytho ...

  5. C# 6.0可能的新特性及C#发展历程

    据扯,C# 6.0在不远的将来就发布了,对应的IDE可能是VS 2014(.Net Framework 5.0),因为VS 2013已于2013年10月份发布了,对应的是.Net Franework ...

  6. Atitit.c# .net 3.5 4.0 4.5 5.0 6.0各个版本新特性战略规划总结

    Atitit.c# .net 3.5 4.0 各个版本新特性战略规划总结 1. --------------.Net Framework版本同CLR版本的关系1 2. paip.----------- ...

  7. c# .net 3.5 4.0 4.5 5.0 6.0各个版本新特性战略规划总结【转载】

    引用:http://blog.csdn.net/attilax/article/details/42014327 c# .net 3.5 4.0 各个版本新特性战略规划总结 1. ---------- ...

  8. 转载——C# 6.0可能的新特性及C#发展历程

    据扯,C# 6.0在不远的将来就发布了,对应的IDE可能是VS 2014(.Net Framework 5.0),因为VS 2013已于2013年10月份发布了,对应的是.Net Franework ...

  9. 有史来最大改变 Android 5.0十大新特性

    有史来最大改变 Android 5.0十大新特性 2014.10.16 14:51:31 来源:腾讯数码作者:腾讯数码 ( 0 条评论 )   距离Android系统上一次重大更新不到一年的时间,谷歌 ...

随机推荐

  1. JavaScript 遍历对象查找指定的值并返回路径

    问:JavaScript 如何查找对象中某个 value 并返回路径上所有的 key? let obj = { key1: 'str1', key2: { key3: 'str3' }, key4: ...

  2. celery:Unrecoverable error: AttributeError("'unicode' object has no attribute 'iteritems')

    环境描述 python2+django1.9下使用celery异步处理耗时请求. celery使用的是celery-with-redis这个第三方库,版本号为3.0. pip install cele ...

  3. 问题:Could not install packages due to an EnvironmentError: [Errno 13] Permission denied:

    1.安装django 执行pip3 install --user django 2.解决方法:加--user   执行pip3 install --user django

  4. 【Python学习之十】yield之send方法

    yield作用 简单地讲,yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是一个普通函数,Python 解释器会将其视为一个 generator.下面以斐波拉 ...

  5. JZOJ 5196. 【NOIP2017提高组模拟7.3】B

    5196. [NOIP2017提高组模拟7.3]B Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto Pro ...

  6. Python基础:输入与输出(I/O)

    来做一个NLP任务 步骤为: 1.读取文件: 2.去除所有标点符号和换行符,并把所有大写变成小写: 3.合并相同的词,统计每个词出现的频率,并按照词频从大到小排序: 4.将结果按行输出到文件 out. ...

  7. Paul Zindel【保罗·金代尔】

    Paul Zindel Paul Zindel's death on March 27, 2003 ended the brilliant life of a famous write. 2003年3 ...

  8. 笔记-python-standard library-17.2 multiprocessing

    笔记-python-standard library-17.2 multiprocessing 1.      multiprocessing source code:Lib/multiprocess ...

  9. postgreysql

    基础 syntax * \help 生成所有的pg命令 * abort 终止事务/work * alter aggregate 修改聚合函数的定义 ALTER AGGREGATE name ( typ ...

  10. Windows下如何用CMD命令跳转到指定的目录下

    以Window7为例说明,想要跳转到I:\adt-bundle-windows-x86-20130219\sdk\platform-tools目录下. 1.在运行中打开CMD命令窗口如下图所示: 2. ...