繁体   English   中英

使用javascript列出电话联系人

[英]Listing phone contacts using javascript

我使用简单的html,css,js和condova开发了适用于android,ios和windows的多平台应用程序,但是,我觉得听起来很简单,却很难在列表中显示设备上的所有联系人。就像您在电话簿或通讯录应用中找到它的方式一样。 这是联系界面的设计:

<?php
?>

<html>
    <head>
        <title></title>
        <script type="text/javascript" src="cordova.js"></script>
        <style type="text/css">
            a { 
                color: inherit;
                text-decoration: none;
            }

            #BODY {
                background-color: #D9D9D9;
            }

            #TABLE {
                width:100.0%;
                border-collapse:collapse;
                background-color: #3A59C0;
                position: fixed;
                top: 0px;
                margin-left: -8px;
            }

            #CONTACTLIST {
                width: 100%;
                height: 91%;
                margin-top: 53px;
                background-color: #D9D9D9;
                overflow-y: scroll; 
                overflow-x:hidden;
                position: fixed;
                list-style-type: none;
                margin-left: -50px;
            }

            #CONTACTLIST > li {
                border-top: 1px solid gray;
            }

            #CONTACTLIST span {
                margin-left: 15px;
                font-family: verdana;
                color: #535353;
                font-size: 1.6cm;
            }

        </style>
    </head>

    <body id="BODY">
        <table id="TABLE" >

            <tr style="height: 50px; width: 45px;">
                <td style="width: 45%;"><center><span style="font-family: verdana;  color: white;">Contacts</span></center></td>
            </tr>

            <tr style="height: 10px;  width: 45px;">
                <td style="width: 45%; background-color: #31C1FF;"></td>
                <td style="width: 45%;"></td>
                <td></td>
            </tr>
        </table>
        <ul id="CONTACTLIST"> 
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
            <li><span>"NAME"  "NUMBER"</span></li>
        </ul>
    </body>
</html>

但是该脚本将使用cordova.js文件中可用的方法(按字母顺序)访问联系人数据库并列出所有联系人,而不是“ NAME”“ NUMBER”。

在Cordova 3中, 甚至“核心” API也位于核心(cordova.js)之外。

因此,您需要首先安装通讯录插件 ,然后添加代码以列出它们 如果只想选择一个联系人,则可以使用选择联系人功能,该功能将打开本机联系人选择器并返回所选的联系人对象。

通过电话获取所有联系人

function onSuccess(contacts) {
    console.log('Found ' + contacts.length + ' contacts.');
    // here you can manipulate the contacts array
    console.log(contacts);
};

function onError(contactError) {
    console.log('Error: '+contactError);
};

// list all contacts
var options      = new ContactFindOptions();
options.filter   = "";
options.multiple = true;
var fields = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
navigator.contacts.find(fields, onSuccess, onError, options);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM