我已经在其他new应用中看到过这一点,但我对Javascript还是相当陌生的,我自己也搞不清楚这一点。我想以编程方式创建一个Google Hangout。然而,在官方API中,创建Hangout的唯一方法是在页面上包含Hangout按钮。
Here's the Google doc on the Hangouts button.
我想要做的是让一个用户点击另一个用户的img,并以这种方式打开Hangout。似乎我可以捕捉到那次点击,然后在后台‘点击’Hangout按钮。然而,我不太擅长使用Javascript,所以我不知道如何做到这一点。
编辑
我尝试了下面mohamedrais的解决方案,但没有成功。是不是和按钮的类有关?
下面是按钮的代码,取自Hangout文档,并添加了一个id
<script type="text/javascript" src="https://apis.google.com/js/platform.js"></script>
<div class="g-hangout" id="hangout-giLkojRpuK"
data-render="createhangout">
</div>
下面是我添加的JS,使用id
s呈现:
<script>
window.onload = function() {
var userImage = document.getElementById("img-giLkojRpuK");
var hangoutButton = document.getElementById("hangout-giLkojRpuK");
userImage.onclick = function() {
console.log("in onclick");
hangoutButton.click(); // this will trigger the click event
};
};
</script>
当我单击img
时,"in onclick“会被记录下来,所以会调用该函数。然而,什么都没有发生--Hangout并没有启动。
当我直接点击Hangouts键时,它会启动Hangouts键。但是,我希望最终隐藏这一点,并从图像中执行单击。
这是img
上方的Hangout按钮的图片
发布于 2014-06-18 14:34:13
window.onload = function() {
var userImage = document.getElementById('imageOtherUser');
var hangoutButton = document.getElementById("hangoutButtonId");
userImage.onclick = function() {
hangoutButton.click(); // this will trigger the click event
};
};
这将会起作用
发布于 2016-05-04 03:46:08
尽管这个问题相当古老,但这里有一个答案:)
使用jQuery的.click() event method和.on() event method可以实现您所要求的功能
所以这可能是代码:
// Set the global variables
var userImage = $("#img-giLkojRpuK");
var hangoutButton = $("#hangout-giLkojRpuK");
$(document).ready(function() {
// When the document is ready/loaded, execute function
// Hide hangoutButton
hangoutButton.hide();
// Assign "click"-event-method to userImage
userImage.on("click", function() {
console.log("in onclick");
hangoutButton.click();
});
});
发布于 2019-03-05 15:56:10
这里的其他答案依赖于用户进行初始单击(在图像上)。这对于OP细节的细节来说是很好的,但不一定是问题标题。
有一个answer here解释了如何通过在按钮(或任何元素)上触发单击事件来执行此操作。
https://stackoverflow.com/questions/24278469
复制相似问题