|
首先一直没弄明白contact对象的clone()方法到底实在做什么,其次,我写了这样一段代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="cordova-2.1.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">
var isReady=0;
// 等待加载phonegap
document.addEventListener("deviceready", onDeviceReady, false);
// PhoneGap加载完毕
function onDeviceReady() {
//此处可以安全使用PhoneGap中的API,将标志变量置为1
isReady=1;
//新建一个联系人
var contact1 = navigator.contacts.create();
contact1.displayName = "Dog";
contact1.nickname = "Doggie"; //同时指定以支持所有设备
// 填充一些字段
contact1.addrsses= "anywhere";
var name1 = new ContactName();
name1.givenName = "Wang";
name1.familyName = "Wang";
contact1.name = name1;
//保存
contact1.save(onSaveSuccess,onSaveError);
//再新建一个联系人
var contact2 = navigator.contacts.create();
contact2.displayName = "Cat";
contact2.nickname = "Cattie"; //同时指定以支持所有设备
// 填充一些字段
contact2.addrsses= "anywhere";
var name2 = new ContactName();
name2.givenName = "Miao";
name2.familyName = "Miao";
contact2.name = name2;
//保存
contact2.save(onSaveSuccess,onSaveError);
var clone = contact1.clone();
alert(clone.nickname);
contact1.remove(onRemoveSuccess,onRemoveError);
}
function onSaveSuccess(contacts){
alert("新建联系人成功");
}
function onSaveError(contactError){
alert("新建联系人失败");
}
function onRemoveSuccess(contacts){
alert("删除联系人成功");
}
function onRemoveError(contactError){
alert("删除联系人失败");
}
</script>
</head>
<body>
<h1>PhoneGap的联系人</h1>
</body>
</html>
原本是希望先弹窗两次提示创建联系人成功,然后再弹窗提示第一个联系人的昵称,之后再删除一个联系人,但是实际运行时却是先弹窗显示dog之后弹窗提示删除联系人失败之后才是两次创建联系人成功,这是为什么,应该怎样改进。
|
|