我试图通过使用three.js来创建与视频提供商(例如YouTube)集成的CSS3D接口(interface)的老板。要求之一是在移动设备上显示它-因为Android平板电脑很古怪,所以我选择了iPad。

由于我的演示计划在本周四进行,因此我认为最快的方法就是向他展示精彩的css3d_youtube演示。

问题是它没有配置为使用手势(触摸捏缩放),我很难这么做。

我还需要添加一些内容,例如背景图片,以及使YouTube播放器全屏显示的功能,因此我必须获取原始代码并对其进行修改。我看到元素周期表是,所以我决定在代码中使用TrackBall Controller 。您可以看到我的修改后的代码here

轨迹球 Controller 似乎会移动相机的y位置。您可以看到我创建的实际页面here if you view in a tablet。我使用了Modernizr库来识别该设备是否为触摸屏,因此仅使用桌面浏览器就不会看到它。

如果可以,我可以删除该条件,以便在桌面浏览器中可以看到它。

如果删除了困扰相机位置的代码(您可以在代码中搜索Modernizr.touch的位置看到我在哪里进行此操作),则在单击按钮时,相机将不再位于视频海报图像的中心。

我还通过添加以下功能尝试了常规的JavaScript手势事件:

function onPinch(e) {
  move(e.scale)
}

并在事件处理程序中调用它:
`document.body.addEventListener('gestureend', onPinch, false)`

但这是一场灾难。 CSS3D对象渲染速度非常慢。

有人可以帮我在css3d youtube演示中添加捏缩放功能吗?或者至少就如何进行提供一些建议?我找不到通过Google -ing提供的任何帮助

最佳答案

看起来像TrackballControls.js has been updated to support touch zoom gestures

如果还有其他人遇到此问题,只需get the latest version即可。

CSS3D periodic tableyoutube示例似乎也已更新。

10-06 07:58
查看更多