0

我正在使用 Phonegap 开发一个 Android 应用程序。在这个应用程序中,我集成了 Facebook 登录模块。用户登录应用后,可以看到自己的好友列表。我已经做到了。我要做的是,在单击特定的朋友姓名时,应将该朋友姓名添加到另一个列表中。但我的问题是这个朋友列表不可点击。如何使动态列表可点击?下面是我的代码。我错过了什么?

xyz.html

  <div class="section">
          <h1>Get user's friends</h1>
          <div id="user-friends"></div>
          <div class="button button-requires-connect"              onclick="getUserFriends();hideButton(this);" />Get your friends</div>

          <div class="info-requires-connect">You need to login before you can use this functionality.</div>


        </div>

pqr.js

function getUserFriends() {
  var markup = '<div class="data-header">Friends</div>';

  for (var i=0; i < friendsInfo.length && i < 25; i++) {
    var profilePictureUrl = '';
    if (friendsInfo[i].picture.data) {
      profilePictureUrl = friendsInfo[i].picture.data.url;
    } else {
      profilePictureUrl = friendsInfo[i].picture;
    }
    markup = markup + '<img src="' + profilePictureUrl + '">' + friendsInfo[i].name + '<br />';
  }

  document.getElementById('user-friends').innerHTML = markup;
}
4

2 回答 2

0

You can wrap your 'friend-markup' for example in <li>s like that:

markup = markup + '<li><img src="' + profilePictureUrl + '">' + friendsInfo[i].name + '</li>'

and then use jQuery to bind clicks to the <li>s:

$('#user-friends').on('click', 'li', function() {
  ... do something
});
于 2013-07-17T13:10:36.690 回答
0
function getUserFriends() {
  var markup = '<div class="data-header">Friends</div>';

  for (var i=0; i < friendsInfo.length && i < 25; i++) {
    var profilePictureUrl = '';
    if (friendsInfo[i].picture.data) {
      profilePictureUrl = friendsInfo[i].picture.data.url;
    } else {
      profilePictureUrl = friendsInfo[i].picture;
    }
    var clickableName = '<a href="" onclick="handleClick(this); return false;">' 
        + friendsInfo[i].name + '</a>';
    markup = markup + '<img src="' + profilePictureUrl + '">' + clickableName + '<br />';
  }

  document.getElementById('user-friends').innerHTML = markup;
}

然后编写处理函数

function handleClick(element/*which friend was clicked*/)
{
    //do something with your friend
}

或者你可以使用 jQuery 来绑定元素上的点击事件,就像@MiRaIT 所说的那样

于 2013-07-17T13:20:52.823 回答