最快最小的越南语 JavaScript 输入编辑器
JavaScript VietUni 1.7 Final 版
引言
许多越南语 Web 应用程序都在输入中使用越南语 JavaScript 拼写。 其中一些是 VIM、VietJie、VietUni…
多年前,我喜欢 VietUni (V.1.618 - R.11.11.01 by Tran Anh Tuan),因为它非常简单、快速和小型。
但它现在在浏览器中无法正确运行(Internet Explorer 7、FireFox、Opera、Netscape…)。 因此,我尝试修复这些问题并将 VietUni 重建为更面向对象。 现在,我已经完成了一个新版本的 VietUni(你可能称之为 1.7 版 :))。
- 我尝试联系 VietUni 的作者,但没有成功。 因此,我依靠 CodeProject 发布此版本的 VietUni。
- 这是一个更新的版本,与现在最受欢迎的 Web 浏览器兼容(Internet Explorer 6+、FireFox 1+、Safari、Opera、Chrome…)。 演示网页是 这里。
背景
几乎所有的代码和设计都保持不变,除了主类和一些文字处理方法。 所有的 VN 拼写处理算法也保持不变。

此版本发布只有一个文件:vietuni.js (~9KB)。 主类是 vietUni
,主方法是 initTyper(el)
和 setMethod(mode)
。 你可以初始化该类的一个新实例,并调用方法 initTyper(el)
来处理你的网页中的每个越南语输入。
* 使用 jQuery 是初始化 VietUni 拼写器的一种简单方法,可以根据你的需要对 VN 输入元素进行初始化。 示例见 这里。
Using the Code
你可以参考与本文附件中的示例 HTML 文件,以使用此版本的 VietUni。
要在你的 Web 应用程序中使用 VietUni 1.7,你必须将 vietuni.js 文件包含到你的网页(例如:母版页)中,并按照以下方式为每个 VN 输入元素注册 VN 输入方法
// ...
<script type="text/javascript" src="vietuni.js"></script>
<script type="text/javascript">
var vUni = new vietUni();
// To enable VN-typing for textbox 'full_name' & textarea 'description'
vUni.initTyper(document.getElementById("full_name"));
vUni.initTyper(document.getElementById("description"));
// All of inputs else (ex: textbox 'email') are not registered VN-typing
</script>
// ...
当你想要切换 VN 输入方法时,你可以调用 vUni.setMethod(int)
(0=OFF, 1=TELEX, 2=VNI, 3=VIQR, 4=AUTO)。
使用 jQuery 注册 VietUni 拼写器的示例如下
// ...
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="vietuni.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var vUni = new vietUni();
// Enable VN-typing for all input elements of CSS class name '.vuni'
$(".vuni").each(function() { vUni.initTyper(this); });
});
</script>
// ...
演示地址是 这里。
关注点
我参考了现在流行的浏览器的技术文档(Internet Explorer、FireFox、Konqueror、Safari、Opera、Netscape…),以修复 VietUni 1.6 的所有错误。
通过使其更面向对象,此版本可以在网页中初始化多个 VN 拼写方法实例。
发布此版本的 VietUni 后,我将构建一个轻量级的 JavaScript 富文本编辑器,以简化在线编辑。