Safari Technology Preview 9 发行说明

Safari Technology Preview Release 9 现已开放下载,适用于 macOS Sierra 测试版和 OS X El Capitan。如果您已安装 Safari Technology Preview,可以从 Mac App Store 的“更新”标签页进行更新。此版本包含 WebKit 修订版本 202612–203152

JavaScript

  • 改进了 ArrayTypedArray 的规范合规性 (r202631, r202943, r202926, r203147, r203101, r203107, r203037)
  • 改进了 %TypedArray%.prototype.subarray 的性能 (r203076)
  • 修复了 Date.setYear() 使其更符合规范 (r202683)
  • 修复了 Date.toGMTString() 使其成为 Date.toUTCString() 函数 (r202752)
  • 修复了成功的 RegExp.compile 以正确返回正则表达式 (r202770)
  • 改进了 String 使其更符合规范 (r202916, r202956)
  • 修复了循环原型以根据规范抛出正确的错误类型 (r202832)
  • 在检查全局词法层冲突时实现了 HasRestrictedGlobalProperty (r202734)
  • 修复了 String.prototype.repeat() 使用负值参数时意外出现的“内存不足”错误 (r202954)
  • 修复了在解析包含 use strict 但位于其他非严格语句之后的函数时 use strict 的处理问题 (r202828)

Web API

  • 更改了 FontFaceSet.loadFontFaceSet.check 以遵守第二个参数 (r203092)
  • assignedSlot 从 CharacterData 移动到 Text,以匹配最新的 Shadow DOM 规范 (r202873)
  • Event.prototype.scoped 替换为 Event.prototype.composed,以反映最新的 Shadow DOM 规范 (r202953)
  • 使 document.body setter 与 HTML 规范对齐 (r202893)
  • 修复了 document.body 以返回 HTML 元素的第一个子元素,该子元素是 bodyframeset 元素 (r202881)
  • 修复了 SVG 文档的 document.title setter (r202895)
  • 修复了阻止调用 document.fonts.ready 回调的问题 (r202945)
  • 添加了对 CSS image-set() 函数无前缀版本的支持 (r202765)
  • 设置 table.tFoot 或调用 table.createTFoot() 应将 HTML <tfoot> 元素添加到表格末尾 (r203011)
  • <td><th> 元素作为 HTMLTableCellElement 对象暴露 (r202937)
  • 防止 tbody.deleteRow(–1)tr.deleteCell(–1) 在没有行或单元格时抛出错误 (r202952)

MathML

  • 添加了对 MathML 中 href 属性的支持 (r203104)
  • 使用 OpenType MATH 表中的参数改进了 <munderover> 的布局 (r203074)
  • 添加了对无法通过 CSS 模拟的 mathvariants 的支持。 (r203072)
  • 重构了 MathML 布局函数以避免使用 flexbox (r202934)

Apple Pay

  • 修复了 Safari 中允许同时打开多个支付单据的错误 (r203084)
  • addressFields 重命名为 contactFields (r202644)
  • PaymentMethod 中添加了 typepaymentPass 属性 (r202655)

Web Inspector

  • Web Inspector
  • 为时间线中的资源请求添加了“复制为 cURL”功能 (r203132)
  • 修复了导致“顶部函数”数据即使在禁用时也显示的问题 (r203102)
  • 在更多场景中改进了 JSON 的美化打印 (r202933)
  • spring 添加到 transition-timing-function 值自动完成中 (r202702)
  • 在布局时间线视图中添加了像素面积列 (r202713)
  • 改进了原生 DOM API 的 API 视图 (r202666)
  • 修复了样式侧边栏中 ⌘⇧S 始终显示保存对话框的问题 (r203017)
  • 修复了从比较视图切换回来时,滚动过的 JavaScript 快照列表显示为空白的问题 (r202932)
  • 修复了导致 UTF8 编码的 XHR 在资源侧边栏中显示乱码的问题 (r202843)
  • 在元素选项卡中的 DOM 树中添加了 Shadow Content 类型 (r202634)
  • 修复了阻止通过“关闭标签页”上下文菜单项关闭最后一个普通标签页的问题 (r202711)

修复了导致在调试器选项卡的“作用域链”侧边栏中显示错误函数名的问题 (r202717)

  • 媒体
  • 当小型视频元素返回到 inline 且过小时暂停它们 (r203066)
  • 更改了画中画控制图标 (r202880)
  • 更改了全屏和画中画,使其在离开主页面时不再有动画效果 (r202872)
  • 修复了 WebAudio 卷积器通道在通道数无效时抛出异常的问题 (r202617)
  • 通过切换到 MediaTime 修复了 MSE 缓冲区的清除问题 (r202641)

修复了 Facebook 没有音轨的视频有时会导致播放控制出现的问题 (r202918)

  • 渲染
  • 修复了使用广色域 PDF 渲染 <img> 元素的问题 (r202927)

修复了将 SVG 图像绘制到不在 DOM 中的 <canvas> 的问题 (r202712)

  • 错误修复
  • 修复了删除损坏的 SQLite 数据库文件时数据库进程崩溃的问题 (r202822)
  • 修复了从 IndexedDB 检索 blob 时的 blob 内容类型问题 (r202747)