Safari Technology Preview 42 发布说明

Safari Technology Preview Release 42 现已可用于 macOS Sierra 和 macOS High Sierra 下载。如果您已安装 Safari Technology Preview,可以从 Mac App Store 的“更新”标签页进行更新。此版本涵盖 WebKit 修订版本 222556-223209

如果您最近从 macOS Sierra 更新到 macOS High Sierra,可能需要手动安装适用于 macOS High Sierra 的 Safari Technology Preview 版本。

文件和目录条目 API

  • 修复了使用空路径调用 fileSystemDirectoryEntry.getDirectory() 时出现的失败 (r223118)
  • 修复了将以两个斜杠开头的路径识别为有效的绝对路径的问题 (r223135)

支付请求

  • 实现了 PaymentRequest.canMakePayment() (r223160)
  • 实现了 PaymentRequest.show()PaymentRequest.hide() (r223076)

剪贴板 API

  • 增加了对自定义粘贴板 MIME 类型的支持,并隐藏了不安全的 MIME 类型 (r222595r222830)
  • 修复了在 TinyMCE 和 GitHub 上复制粘贴图片文件的问题 (r222656)
  • 修复了 DataTransfer.items 以暴露自定义粘贴板类型 (r223034)
  • 阻止了粘贴图片时暴露文件 URL (r222688)
  • 阻止了 dragenterdragleave 使用相同的数据传输对象 (r223031)
  • 在执行“粘贴并匹配样式”时,从 DataTransfer.items 中移除了 “text/html” (r222956)
  • 开始使用 blob URL 在 RTF 和 RTFD 内容中粘贴图片 (r222839)
  • 对粘贴板中的 URL 进行了清理,以供其他应用程序和跨源内容使用 (r223195)

字体

  • 向 FontFace JavaScript 对象添加了 “display” 属性 (r222949)
  • 实现了 font-display 加载行为 (r222926)
  • 将 Brotli 升级到 1.0.1 版本,并将 WOFF2 升级到最新上游版本 (r222903)

CSS

  • 移除了 constant(),转而使用 env() (r222627)

Web API

  • 增加了对 DOM 中止的支持 (r222692)
  • 增加了对 <link rel=preconnect> 的支持 (r222613)
  • 更改为在粘贴 RTFD 时使用 blob URL (r222839)
  • 更改了 XMLHttpRequest.setRequestHeader() 以允许 Content-Transfer-Encoding 头部 (r222807, r222817)
  • 阻止了提交已断开连接的表单 (r223117)
  • 更新了 Document.createEvent 以适应最近的 DOM 规范更改 (r223023)

WebDriver

  • 增加了通过向其父级 <select> 元素发送按键来选择 <option> 元素的支持。
  • 修复了导致 driver.sendKeys("") 意外失败并抛出异常的问题。

JavaScript

  • 解决了 if (!await get(something)) 中的一个问题 (r223043)
  • 在 ES6 模块加载器中移除了 instantiate 钩子 (r223173)
  • 修复了在 super.call() 中未定义但在 this.call() 中已定义的对象属性问题 (r223175)
  • 实现了多态原型 (r222827)
  • 实现了 RegExp Unicode 属性转义 (r223081)
  • 引入了 import.meta (r222895)

辅助功能

  • 通过 AtkObject 属性暴露了 ARIA 拖放属性值 (r222787)
  • 暴露了带有 ATK*ROLE*MENU_ITEM 的 ARIA 菜单项,即使它是 group 角色的子项 (r222822)
  • 修复了表格上的冗余布局问题 (r222790)
  • 修复了暴露设置在行元素上的 aria-rowindex 的问题 (r222821)
  • 修复了在非标题角色上暴露 aria-level 值的问题 (r222765)

媒体

  • 增加了获取 ImageBitmapRenderingContext 的基本支持 (r222997)
  • 修复了 WebGL 合成性能缓慢的问题 (r222961)
  • 修复了在解码时 <video> 元素不在 DOM 中时,加密内容的 seek() 命令问题 (r222995)

渲染

  • 修复了元素具有 transform 时全屏动画不正确的问题 (r223051)
  • 修复了最小字体大小可能导致元素具有无限 line-height 的问题 (r222588)
  • 改进了大型图片的渐进式显示 (r223091)

WebGL

  • 更改为允许将 async 用作导入的绑定名称 (r223124)
  • 显著更改了 WebGL 合成到页面的方式,在具有高分辨率显示器的低端硬件上提供了更好的性能 (r222961)
  • 减少了多重采样抗锯齿 (MSAA) 中使用的最大采样数,以提高性能 (r222963)

Web Inspector

  • 添加了 Canvas 标签页 (r223011)
  • 在 CSS calc() 中添加了 min()max() 的自动补全 (r223038)
  • 在重新设计的样式侧边栏中添加了使用 Tab、Shift-Tab、Enter 和 ESC 进行键盘导航的支持 (r222959)
  • 在重新设计的样式侧边栏中添加了编辑规则选择器的支持 (r222799)
  • 在重新设计的样式侧边栏中添加了对手动编辑的撤销和重做的支持 (r222678)
  • 在 Network 标签页中添加了资源的详细视图 (r222868)
  • 在 Network 标签页中添加了资源的头部详细视图 (r223006)
  • 在 Network 标签页的头部详细视图中添加了远程地址 (r223078)
  • 在 Network 标签页中添加了 cookies 详细视图 (r223058)
  • 在 Network 标签页的头部详细视图中添加了搜索支持 (r223057)
  • 将 Layers 标签页侧边栏的 DOM 高亮方式更改为通过行悬停触发,而非行选中 (r222801)
  • 更改了 Network 标签页的资源过滤方式,基于 URL 和文本内容 (r223065)
  • 更改了 Network 标签页,使其即使在未记录网络信息的情况下也显示初始加载的资源 (r223170)
  • 修复了时间轴标尺标签的抖动问题 (r223171)
  • 修复了在 Web Inspector Web 视图中点击会清除检查页面中的选择内容的问题 (r223007)
  • 修复了 Beacon 和 Ping 分组问题 (r222865)
  • 修复了 Layers 标签页侧边栏的弹出窗口 (r222566)
  • 修复了行换行问题,该问题导致瀑布图显示在下一行的名称后面 (r223059)
  • 修复了快速打开资源对话框图标模糊的问题 (r222662)
  • 修复了使用键盘选择子图层时弹出窗口对齐错误的问题 (r222759)
  • 修复了 Network 标签页中的表格在滚动时减少行数后显示空白的问题 (r222899)
  • 使 3D 对象在 Layers 可视化中可选中 (r223209)
  • 确保在窗口大小调整时弹出窗口不会变形。 (r222742)
  • 在“复制为 cURL”生成的命令中转义了更多字符 (r222762)
  • 改进了 Canvas 录制事件 (r222888)
  • 改进了为表格设置初始默认排序 (r222983)
  • 提高了 Network 标签页中表格选取的可靠性 (r222988)
  • 改进了快速打开对话框,使其在搜索结果中包含源映射文件 (r223164)
  • 在 Network 标签页中包含了 Beacon 和 Ping 请求 (r222739)
  • 设置了初始列宽,以允许 Network 标签页中的瀑布图列默认展开更多 (r223147)

错误修复

  • 修复了 Safari Technology Preview 41 中引入的一个问题,即从其他应用打开链接时,标签页栏可能与当前显示的标签页内容不同步