common.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. //取消浏览器的所有事件,使得active的样式在手机上正常生效
  2. document.addEventListener( "touchstart", function(e) {
  3. return false;
  4. }, false );
  5. // 屏蔽选择函数
  6. function shield() {
  7. return false;
  8. }
  9. document.oncontextmenu = shield;
  10. // H5 plus事件处理
  11. document.addEventListener( "plusready", function() {
  12. gInit();
  13. document.body.onselectstart = shield;
  14. // Android处理返回键
  15. plus.ui.getSelfWindow().addEventListener( "back", function(){
  16. back();
  17. }, false );
  18. // iOS平台使用滚动的div
  19. if ( "iOS" == plus.os.name ) {
  20. var t = document.getElementById("dcontent");
  21. if ( t ) {
  22. t.className = "sdcontent";
  23. }
  24. t = document.getElementById("content");
  25. if ( t ) {
  26. t.className = "scontent";
  27. }
  28. }
  29. }, false );
  30. // 兼容非H5 plus终端
  31. if ( navigator.userAgent.indexOf("Html5Plus") < 0 ) {
  32. document.addEventListener( "DOMContentLoaded", function () {
  33. gInit();
  34. document.body.onselectstart = shield;
  35. }, false );
  36. }
  37. // 处理返回事件
  38. function back() {
  39. if ( window.plus ) {
  40. plus.ui.getSelfWindow().close();
  41. } else if ( history.length > 1 ) {
  42. history.back();
  43. } else {
  44. window.close();
  45. }
  46. }
  47. // 处理点击事件
  48. function clicked( id ) {
  49. if ( window.plus ) {
  50. var pre = "";//"http://192.168.1.178:8080/h5/";
  51. plus.ui.createWindow( pre+id, {name:id,scalable:false} ).show( "slide-in-right", 300 );
  52. } else {
  53. window.open( id );
  54. }
  55. }
  56. // 通用元素对象
  57. var _dout_,_dcontent_;
  58. function gInit() {
  59. _dout_ = document.getElementById("output");
  60. _dcontent_ = document.getElementById("dcontent");
  61. }
  62. // 清空输出内容
  63. function outClean() {
  64. _dout_.innerHTML = "";
  65. }
  66. // 输出内容
  67. function outSet( s ) {
  68. _dout_.innerHTML = s+"<br/>";
  69. _dout_.scrollTop = 0;
  70. }
  71. // 输出行内容
  72. function outLine( s ) {
  73. _dout_.innerHTML += s+"<br/>";
  74. }
  75. // 格式化时长字符串,格式为"HH:MM:SS"
  76. function timeToStr( ts ) {
  77. if ( isNaN(ts) ) {
  78. return "--:--:--";
  79. }
  80. var h = parseInt(ts/3600);
  81. var m = parseInt((ts%3600)/60);
  82. var s = parseInt(ts%60);
  83. if ( h < 10 ) {
  84. h = "0"+h;
  85. }
  86. if ( m < 10 ) {
  87. m = "0"+m;
  88. }
  89. if ( s < 10 ) {
  90. s = "0"+s;
  91. }
  92. return (h+":"+m+":"+s);
  93. }
  94. // 格式化日期时间字符串,格式为"YY-MM-DD HH:MM:SS"
  95. function dateToStr( datetime ) {
  96. var year = datetime.getFullYear(),
  97. month = datetime.getMonth()+1,
  98. date = datetime.getDate(),
  99. hour = datetime.getHours(),
  100. minutes = datetime.getMinutes(),
  101. second = datetime.getSeconds();
  102. if ( month < 10 ) {
  103. month = "0" + month;
  104. }
  105. if ( date < 10 ) {
  106. date = "0" + date;
  107. }
  108. if ( hour < 10 ) {
  109. hour = "0" + hour;
  110. }
  111. if ( minutes < 10 ) {
  112. minutes = "0" + minutes;
  113. }
  114. if ( second < 10 ) {
  115. second = "0" + second;
  116. }
  117. return (year+"-"+month+"-"+date+" "+hour+":"+minutes+":"+second);
  118. }