activity-detail.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. // 基本信息(包括userAgent)
  2. var baseInfo = null,
  3. // 基础环境信息(包括当前webview)
  4. baseEnv = null;
  5. // 搜索结果
  6. var $resultList = $('.activiy-list');
  7. var self;
  8. var docInfo;
  9. var myScroll;
  10. function initScroller(){
  11. //阻尼系数
  12. var deceleration = mui.os.ios?0.003:0.0009;
  13. mui('.mui-scroll-wrapper').scroll({
  14. scrollX: true,
  15. bounce: false,
  16. indicators: true, //是否显示滚动条
  17. deceleration:deceleration
  18. });
  19. myScroll = mui(".mui-scroll").pullToRefresh({
  20. down: {
  21. callback: function() {
  22. var _self = this;
  23. setTimeout(function() {
  24. load();
  25. _self.endPullDownToRefresh();
  26. }, 1000);
  27. }
  28. },
  29. scrollLeft: function(){
  30. xScroll = true;
  31. }
  32. });
  33. }
  34. function load() {
  35. activityList()
  36. }
  37. // 获取登录相关信息
  38. var getBaseInfo = function() {
  39. // 登录的相关信息
  40. var userAgent = JSON.parse(plus.storage.getItem("userAgent"))
  41. return {
  42. userAgent: userAgent,
  43. teamInfo: JSON.parse(plus.storage.getItem("teamInfo"))
  44. }
  45. },
  46. // 获取基础环境信息
  47. getBaseEnvPromise = function () {
  48. self = plus.webview.currentWebview();
  49. docInfo = JSON.parse(plus.storage.getItem("docInfo"));
  50. var env = {
  51. webview: plus&&plus.webview.currentWebview()
  52. };
  53. return Promise.resolve().then(function(res) {
  54. return env;
  55. });
  56. },
  57. // 初始化活动列表
  58. activityList = function() {
  59. plus.nativeUI.showWaiting();
  60. var obj = {
  61. id: self.activityId
  62. },
  63. params = {
  64. task: JSON.stringify(obj),
  65. page: 1,
  66. size: 1
  67. }
  68. sendPost("/doctor/healthBank/selectTask", params, queryFails, function(res) {
  69. if(res.status == 200) {
  70. var list = res.data.detailModelList;
  71. plus.nativeUI.closeWaiting();
  72. if(list.length == 0) {
  73. mui.toast("无具体活动详情")
  74. } else {
  75. var img = list[0].img;
  76. if(img){
  77. img = getImgUrl(img);
  78. }else{
  79. img = "../images/morenhuodong_banner02_img.png";
  80. }
  81. $("#banner").attr("src", img);
  82. $("#title").html(list[0].title)
  83. $("#organizer").html(list[0].organizer)
  84. $("#type").html(list[0].type)
  85. $("#activityTime").html(list[0].startTime + " ~ " + list[0].endTime)
  86. $("#location").html(list[0].location)
  87. $("#description").html(list[0].description)
  88. $(".total").html(list[0].total)
  89. }
  90. } else {
  91. plus.nativeUI.closeWaiting();
  92. queryFails(res);
  93. }
  94. }, 'post')
  95. },
  96. //查询失败回调
  97. queryFails = function(res) {
  98. if(res) {
  99. mui.toast(res.msg)
  100. } else {
  101. mui.toast("加载失败!")
  102. }
  103. },
  104. // 绑定页面事件
  105. bindEvents = function () {
  106. $resultList.on("tap", "li", function() {
  107. activityId = $(this).attr("data-code")
  108. openWebview("activity-detail.html", {
  109. activityId: activityId
  110. });
  111. });
  112. $(".award-index").on("tap", "span", function() {
  113. var $this = $(this),
  114. index = $this.index();
  115. if($this.hasClass("active")){
  116. return false;
  117. }
  118. $this.siblings().removeClass("active");
  119. $this.addClass("active");
  120. mui('.mui-slider').slider().gotoItem(parseInt(index));
  121. })
  122. //滚动切换
  123. document.querySelector('.mui-slider').addEventListener('slide', function(event) {
  124. $(".award-index span").removeClass("active");
  125. if (event.detail.slideNumber === 0) {
  126. $(".award-index span").eq(0).addClass("active");
  127. } else if (event.detail.slideNumber === 1) {
  128. $(".award-index span").eq(1).addClass("active");
  129. } else if (event.detail.slideNumber === 2) {
  130. $(".award-index span").eq(2).addClass("active");
  131. }
  132. });
  133. };
  134. // 页面业务处理流程开始
  135. mui.plusReady(function() {
  136. //获取当前页面
  137. self = plus.webview.currentWebview();
  138. initScroller();
  139. getBaseEnvPromise();
  140. //绑定事件
  141. bindEvents();
  142. //数据渲染
  143. activityList();
  144. })