在 Google+ Hangouts API 中工作,我试图简单地切换 div 的可见性。让它工作,但它需要在触发前单击两次(然后只需要来回单击一次)。这似乎是一个常见的切换问题,但解决方案总是不同。大概是件容易的事。一点帮助?谢谢!
<script>
//Fetches and displays participants
function showParticipants() {
var participants = gapi.hangout.getParticipants();
var retVal = '<p>Participants: </p><ul>';
for (var index in participants) {
var participant = participants[index];
if (!participant.person) {
retVal += '<li>A participant not running this app</li>';
}
retVal += '<li>' + participant.person.displayName + '</li>';
}
retVal += '</ul>';
//Toggles visibility of participantsDiv
var div = document.getElementById('participantsDiv');
if (div.style.display !== 'none') {
div.style.display = 'none';
}
else {
div.style.display = 'block';
}
div.innerHTML = retVal;
}
function init() {
// When API is ready...
gapi.hangout.onApiReady.add(
function(eventObj) {
if (eventObj.isApiReady) {
document.getElementById('showParticipants')
.style.visibility = 'visible';
}
});
}
// Wait for gadget to load.
gadgets.util.registerOnLoadHandler(init);
</script>