我发现在浏览器上必须要有 <meta charset="utf-8"/>标签, 否则无法转换
fffx opened this issue · 2 comments
fffx commented
这个好像没看到文档上有说明?
creeperyang commented
之前测试没注意到这个问题。如果方便,可以直接给 readme 提个pr,补充有关内容。
我的理解是如果浏览器中 Intl.Collator.supportedLocalesOf(['zh-CN'])
显示支持,就表示支持转换。
fffx commented
试了下, 我发现是charset的问题, 下面这个保存到本地 pinyin项目的doc文件夹, 在本地浏览器打开可以重现
<title>tiny-pinyin</title>
<link href="app.css" rel="stylesheet">
<div id="main">
<textarea id="hanzi"></textarea>
<pre id="pinyin"></pre>
</div>
<script type="text/javascript" src="browser.js"></script>
<script type="text/javascript" src="app.js"></script></body>
这段html的特点是没有中文字符, 如果有中文字符, 浏览器就会推断charset为utf-8, 那就能正常转换, 这个html放到github page中也能正常转换, 因为服务器在response header 中有个content-type: text/html; charset=utf-8
。
所有我们应该强制页面的charset为utf-8?