Laan's steps..

Feed Rss

使用AIR开发浏览器,实现保存用户名和密码功能

10.23.2009, air, by .

前几天正研究了一下AIR中的HTML。确实是个好东西,引擎很不错。最最重要的是页面元素和as几乎是无缝连接。这里简单介绍一下保存用户名和密码功能的实现——个人对html确实没什么研究,只能是说一些基于实践的东西了。

实现的原理是在表单提交时,提取表单中的数据保存。用户再次登录太页面时,提取保存数据并填充表单。

最简单的方法就是监听整个页面的click事件(呵呵,直接忽略回车提交!):

var htmlDoc:Object = htmlLoader.window.document;
htmlDoc.addEventListener(“click”, documentClickHandler);

当用户点击按钮提交表单时,提取表单内容:

function documentClickHandler(obj:Object):void {
if (obj.target.type == “submit” && obj.target.form) {
var form:Object = obj.target.form;
var elements:Object = form.elements;

//表单名称值对应表
var valueMap:Object = new Object();
for (var i:uint = 0; i < elements.length; i++) {
var item:Object = elements.item(i);

if (item.type == “text” || item.type == “password”) {//这里只是记录两种类型的数据
valueMap[item.id] = item.value;
}
}
}
}

提交到数据后,将数据和页面location建立索引保存即可。当用户再次浏览该页面时,提取保存的表单数据并填充表单:

var map:Object = so.data.formMap;
if (map[html_.location]) {
var valueMap:Object = map[html_.location];
for (var id:String in valueMap) {
htmlDoc.getElementById(id).value = valueMap[id];
}
}

完成!

使用AIR开发浏览器,实现保存用户名和密码功能 有1条回应

  1. 好久没顶laan兄的文章了..
    开始搞AIR了..

    回复

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>