index.html 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Let it snow with Zepto.js</title>
  5. <meta name="name" content="content">
  6. <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  7. <style>
  8. body { background: #000; color: #fff; overflow: hidden }
  9. div { position: absolute; }
  10. </style>
  11. </head>
  12. <body>
  13. <script src="../../src/zepto.js"></script>
  14. <script src="../../src/event.js"></script>
  15. <script src="../../src/fx.js"></script>
  16. <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://zeptojs.com/let-it-snow" data-text="Let it snow with Zepto.js" data-via="zeptojs" data-lang="en">Tweet</a>
  17. <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs")</script>
  18. <script>
  19. $(document).ready(function(){
  20. var i = 100, glyphs = '❄❅❆'.split('')
  21. function rand(max){ return Math.floor(Math.random()*max) }
  22. function addFlake(){
  23. var el = $('<div><div>' + glyphs[rand(glyphs.length)] + '</div></div>')
  24. $('body').append(el)
  25. el.css({ left: rand(100)+'%', top: -100-rand(500), fontSize: 20+rand(30) })
  26. el.anim(
  27. { translateY: 1500+rand(500)+'px', translateX: 50-rand(100)+'px', rotate: (2e3-rand(4e3))+'deg' },
  28. 6+rand(10),
  29. 'linear',
  30. function(){
  31. addFlake()
  32. el.remove() // garbage collect
  33. }
  34. )
  35. }
  36. while(i--) addFlake()
  37. // enable for extra fun
  38. //window.ondeviceorientation = function(event){
  39. // ('alpha' in event) && $('body').css({ '-webkit-transform': 'rotate('+event.alpha+'deg)'})
  40. //}
  41. })
  42. </script>
  43. </body>
  44. </html>