flash1-1.html 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. <link rel="stylesheet" type="text/css" href="css/reset.css">
  7. <link rel="stylesheet" type="text/css" href="css/flash1.css">
  8. <script type="text/javascript" src="js/jquery-1.11.3.min.js"></script>
  9. <script type="text/javascript" src="js/hammer.min.js"></script>
  10. </head>
  11. <body>
  12. <div id="wrapper" class="wrapper">
  13. <div class="bg"></div>
  14. <div class="wall"></div>
  15. <div class="obj"></div>
  16. <div class="shadow"></div>
  17. <div class="candle candle1">
  18. <div class="fire"></div>
  19. </div>
  20. </div>
  21. <canvas id="myCanvas" width="800" height="600"></canvas>
  22. <script type="text/javascript">
  23. var c = document.getElementById("myCanvas");
  24. var ctx = c.getContext("2d");
  25. ctx.strokeStyle = "#0000FF";
  26. var isPress = false;
  27. var hammer = document.getElementById("wrapper");
  28. var mc = new Hammer(hammer);
  29. mc.on("press", function(ev) {
  30. isPress = true;
  31. });
  32. mc.on("pressup", function(ev) {
  33. isPress = false;
  34. });
  35. mc.get('pan').set({ direction: Hammer.DIRECTION_ALL });
  36. mc.on("panleft panright", function(ev) {
  37. var e = ev;
  38. e.pageX = ev.center.x;
  39. moveEvent(e);
  40. });
  41. var OrigOB1Y = Number($(".candle1").css("top").replace("px",""));
  42. $(".candle1").mousedown(function(){
  43. isPress = true;
  44. });
  45. $(window).mouseup(function(){
  46. isPress = false;
  47. });
  48. $(".wrapper").mousemove(function(e){
  49. moveEvent(e);
  50. });
  51. function moveEvent(e){
  52. var mouseX = e.pageX;
  53. if (isPress && mouseX<240 && mouseX > 77){
  54. $(".candle1").css({
  55. "left":mouseX,
  56. "top" :OrigOB1Y-(mouseX-72)*0.51
  57. });
  58. var scaleRate = ((mouseX-77)*0.0012)+0.8;
  59. // console.log(scaleRate);
  60. $(".shadow").css("transform","scale("+scaleRate+")");
  61. // console.log($(".shadow"));
  62. var shadow = getPos($(".shadow"));
  63. var x1 = shadow.x - ((scaleRate-1)*60);
  64. var y1 = shadow.y - ((scaleRate-1)*100);
  65. var x2 = (shadow.x+122) + ((scaleRate-1)*60);
  66. var y2 = (shadow.y+60) - ((scaleRate-1)*20);
  67. var x3 = shadow.x - ((scaleRate-1)*60);
  68. var y3 = (shadow.y+124) + ((scaleRate-1)*40);
  69. var x4 = (shadow.x+122) + ((scaleRate-1)*60);
  70. var y4 = (shadow.y+183) + ((scaleRate-1)*100);
  71. ctx.clearRect(0,0,800,600);
  72. ctx.beginPath();
  73. var candle = getPos($(".candle1"));
  74. ctx.moveTo(candle.x+7,candle.y);
  75. ctx.lineTo(x1,y1);
  76. ctx.moveTo(candle.x+7,candle.y);
  77. ctx.lineTo(x2,y2);
  78. ctx.moveTo(candle.x+7,candle.y);
  79. ctx.lineTo(x3,y3);
  80. ctx.moveTo(candle.x+7,candle.y);
  81. ctx.lineTo(x4,y4);
  82. ctx.closePath();
  83. ctx.stroke();
  84. }
  85. }
  86. function getPos(tar){
  87. var result = {};
  88. result.x = Number(tar.css("left").replace("px",""));
  89. result.y = Number(tar.css("top").replace("px",""));
  90. return result;
  91. }
  92. </script>
  93. </body>
  94. </html>