javascript - 播放符号 (▶) 在 document.title 中被压扁

标签 javascript html html5-audio

添加到关于 Why does the HTML symbol for ▶ not work in document.title 的问题中, 当我使用正确转义的 javascript 十六进制值将播放符号添加到文档标题时,该符号似乎被压扁了:

JavaScript:

document.title = '\u25BA' + document.title;

内页 (正确)

BodyDemo

内部标题 (不太正确)

TitleDemo

请参阅此 fiddle 以获得工作模型。我添加了 /show/light 这样 javascript 实际上可以访问主页上的文档标题,但是如果你取消扩展,你可以看到代码如下好吧。

jsFiddle

这似乎发生在所有主要浏览器(Chrome、Firefox、IE)上。

测试(在 Win8 上):

  • Chrome:版本 30.0
  • Firefox:22.0 版
  • IE:10.0 版

当我访问 YouTube 时,它​​看起来很好,所以我不确定这是浏览器特定问题。

YouTubeDemo

最佳答案

通过将 YouTube 使用的符号 (▶) 粘贴到 codepoints.net 中,您可以看到他们实际上使用的是不同的 unicode 版本。返回的字符是 U+25B6(不要与 25B825BA 混淆)

这应该看起来更好:

function PrependPageTitle(player) {
    var playIcon = '\u25B6 ';
    var startsWithIcon = document.title.substring(0, playIcon.length)===playIcon;

    if (player.paused && startsWithIcon) {
        document.title = document.title.slice(playIcon.length);
    } else if (!player.paused && !startsWithIcon) {
        document.title = playIcon + document.title;
    }
}

演示在这里:

jsFiddle

关于javascript - 播放符号 (▶) 在 document.title 中被压扁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19353423/

相关文章:

javascript - 在 Object.create 中使用属性描述符的正确方法是什么?

php - 上传视频导致 $_POST/$_FILES 为空

jquery - 具有适当文本对齐的列表样式和元素符号效果

html - 将 HTML 文本同步并突出显示到音频

javascript - 在angularjs中使用删除点击的元素和范围

JavaScript数据结构解释

jquery - 如何使用 jQuery 将 min-height 应用于 DIV?

javascript - 未使用带有实时输入的 getFloatFrequencyData 获取网络音频中的频率数据

firefox - 无法更改 FireFox 中 HTML5 音频标签的音量

javascript - 从外部 View 动态添加 html