css3d_youtube2.html 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
  6. <title>three.js css3d - youtube</title>
  7. </head>
  8. <body>
  9. <script src="../build/three.min.js"></script>
  10. <script src="js/renderers/CSS3DRenderer.js"></script>
  11. <div id="container"></div>
  12. <script>
  13. var camera, scene, renderer;
  14. var player;
  15. var dom = document.createElement( 'div' );
  16. dom.style.width = '480px';
  17. dom.style.height = '360px';
  18. var object = new THREE.CSS3DObject( dom );
  19. object.position.x = 0;
  20. object.position.y = 0;
  21. object.position.z = -400;
  22. var Element = function ( entry ) {
  23. player = document.createElement( 'iframe' );
  24. player.style.position = 'absolute';
  25. player.style.width = '480px';
  26. player.style.height = '360px';
  27. player.style.border = '0px';
  28. player.src = 'http://www.youtube.com/embed/HDh4uK9PvJU?rel=0&autoplay=1&controls=0&showinfo=0';
  29. dom.appendChild( player );
  30. return object;
  31. };
  32. init();
  33. animate();
  34. function init() {
  35. camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 1, 5000 );
  36. camera.position.y = - 25;
  37. scene = new THREE.Scene();
  38. renderer = new THREE.CSS3DRenderer();
  39. renderer.setSize( window.innerWidth, window.innerHeight );
  40. renderer.domElement.style.position = 'absolute';
  41. renderer.domElement.style.top = 0;
  42. document.getElementById( 'container' ).appendChild( renderer.domElement );
  43. scene.add( new Element( ) );
  44. window.addEventListener( 'resize', onWindowResize, false );
  45. }
  46. function onWindowResize() {
  47. camera.aspect = window.innerWidth / window.innerHeight;
  48. camera.updateProjectionMatrix();
  49. renderer.setSize( window.innerWidth, window.innerHeight );
  50. }
  51. function animate() {
  52. requestAnimationFrame( animate );
  53. renderer.render( scene, camera );
  54. object.rotation.y += .01;
  55. }
  56. </script>
  57. </body>
  58. </html>