我使用UniWebView作为Unity的UI。我需要发送touchevents来修改3D资产。 Uniwebview的消息传递是通过URL格式完成的,因此必须是字符串。
当我尝试使用JSON.stringify()
发送touchevent时,它只发送{isTrusted: true}
。我在this question没有运气的情况下经历了一切。 second和third答案中的函数返回相同的结果,只返回isTrusted
个对象。
在最佳答案中,作者明确表示不应删除所有DOM引用,但在我的用例中,我认为它完全可以接受。
我该怎么做?
如果它自动完成它会很好(检测它是否是一个DOM元素("循环引用"))但我想我也可以手动过滤以下键:
我发现this question用于循环遍历对象,但注释意味着循环引用可能会导致溢出。最重要的是,我不确定如何重建"对象。
任何帮助都将不胜感激。
答案 0 :(得分:2)
不是解决方案,但暂时我只是检索触摸:
function getTouches(e) {
let touches = e.touches;
let output = [];
for (let i = 0; i < touches.length; i++) {
let touch = {
clientX: touches[i].clientX,
clientY: touches[i].clientY
};
output.push(touch);
}
return output;
}