common.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /**
  2. * 绑定事件
  3. * @param {HTMLElement} elem 待绑定事件的元素
  4. * @param {String} en 事件的名称
  5. * @param {Function} fn 回调函数
  6. * @param {Boolean} capture 是否使用事件捕获
  7. */
  8. function bind(elem, en, fn, capture) {
  9. if (elem.addEventListener) {
  10. elem.addEventListener(en, fn, capture);
  11. } else {
  12. elem.attachEvent('on' + en, fn);
  13. }
  14. }
  15. /**
  16. * 反绑定事件
  17. * @param {HTMLElement} elem 待反绑定事件的元素
  18. * @param {String} en 事件的名称
  19. * @param {Function} fn 回调函数
  20. */
  21. function unbind(elem, en, fn) {
  22. if (elem.removeEventListener) {
  23. elem.removeEventListener(en, fn);
  24. } else {
  25. elem.detachEvent('on' + en, fn);
  26. }
  27. }
  28. /**
  29. * 事件对象预处理
  30. * @param {Event} evt 事件对象
  31. */
  32. function prepare(evt) {
  33. evt = evt || window.event;
  34. evt.target = evt.target || evt.srcElement;
  35. evt.preventDefault = evt.preventDefault || function() {
  36. this.returnValue = false;
  37. };
  38. return evt;
  39. }
  40. /**
  41. * 阻止事件的默认行为
  42. * @param {Event} evt 事件对象
  43. */
  44. function prevent(evt) {
  45. if (evt.preventDefault) {
  46. evt.preventDefault();
  47. } else {
  48. evt.returnValue = false;
  49. }
  50. }
  51. /**
  52. * 获得[min, max)范围的随机整数
  53. * @param {Number} min
  54. * @param {Number} max
  55. */
  56. function randomInt(min, max) {
  57. return parseInt(Math.random() * (max - min) + min);
  58. }
  59. /**
  60. * 获得随机颜色
  61. */
  62. function randomColor() {
  63. var red = randomInt(0, 256);
  64. var green = randomInt(0, 256);
  65. var blue = randomInt(0, 256);
  66. return "rgb(" + red + "," + green + "," + blue + ")";
  67. }
  68. function createTable() {
  69. document.write("<table class='t99'>");
  70. for (var i = 1; i <= 9; i += 1) {
  71. document.write("<tr>");
  72. for (var j = 1; j <= i; j += 1) {
  73. document.write("<td>");
  74. document.write(i + "*" + j + "=" + i * j);
  75. document.write("</td>");
  76. }
  77. document.write("</tr>");
  78. }
  79. document.write("</table>");
  80. }