这是一个简单高效的JavaScript拼音匹配引擎,它支持多音字,另外提供全文版支持繁体字
var engine = pinyinEngine();
//var data = [..];
for (var i = 0, len = data.length; i < len; i ++) {
// @param {Array} 标签
// @param {Any} 被索引的内容
engine.setCache(['文艺', '绘画', '原创', '艺术'], 'http://planeart.cn');
};
(如果需要重置索引可使用resetCache()方法)
第一个参数为关键字;第二个参数为回调函数,回调函数接收每一次匹配到的数据,所以你可以在此把数据用HTML展现出来:
var txt = [];
engine.search(keyword, function (data) {
txt.push('<li><a href="javascript:;" id="');
txt.push(data.id);
txt.push('">')
txt.push(data.name);
txt.push('</a></li>');
});
txt = txt.join('');
txt = txt == '' ? '<li><div class="tmpl-schoolBox-noContent">无查询结果..</div></li>' : txt;
(如果想查询单个字的拼音可直接访问引擎缓存,如var cache = pinyinEngine.cache(); cache["乐"];输出结果为["le", "yue"]
<script src="pinyinEngine.js"></script>
<script src="pinyinEngine.full.js"></script>
http://code.google.com/p/pinyin-engine/
pinyinEngine.js (简体中文版, gzip16.9kb)
pinyinEngine.full.js (简体中文+繁体中文版, gzip46.1kb)
©2011 planeArt.cn