details.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. $(function(){
  2. // 视频播放插件
  3. zymedia('video',{autoplay: true});
  4. // 点击关注报名
  5. $('.lpname-title a').on('click',function(){
  6. $('.submit_area input[name="source"]').val('46');
  7. $('.input_text').attr('placeholder','输入手机号关注更多楼盘动态');
  8. $('.bmipc').val('立即关注');
  9. $(".lpapply").animate({top:"0px"},300);
  10. $('.keep').show();
  11. $('.m_videobj').show();
  12. $('.zy_media').hide();
  13. })
  14. // 关闭按钮
  15. $('.lpapply_gb').on('click',function(){
  16. shutFn();
  17. })
  18. function shutFn(){
  19. $('.m_videobj').hide();
  20. $('.zy_media').show();
  21. $(".lpapply").animate({top:"-100%"},300);
  22. $('.keep').hide();
  23. $('.input_text').attr('placeholder','输入手机号码可免费查看全集');
  24. $('.submit_area input[name="source"]').val('45');
  25. $('.bmipc').val('查看视频');
  26. }
  27. // 处理报名窗口获取焦点后向上收
  28. $('.input_text').on('focus',function(){
  29. $(".lpapply").css("top", "-75px");
  30. $('.input_text').attr('placeholder','');
  31. $('.input_text').css('text-align','left');
  32. })
  33. // // 获取楼盘ID
  34. var lpid = $('.zy_media').attr('data-id');
  35. $('.submit_area input[name="hid"]').val(lpid); //修改报名窗口的楼盘ID
  36. // 点赞特效 提交 id 及 1 代表点赞,2 代表取消
  37. var objo = new Object();
  38. $('.give').on('click',function(){
  39. var that = $(this);
  40. if(that.hasClass('oin')){
  41. that.removeClass('oin')
  42. }else {
  43. that.addClass('oin');
  44. }
  45. objo.id = that.attr('data-id')
  46. objo.type = that.attr('data-type')
  47. $.ajax({
  48. url:'/video/plays',
  49. dataType:"json",
  50. type:'GET',
  51. data:{id:objo.id,thumbs_up:objo.type},
  52. success:function(data){
  53. if(data.code == 200){
  54. console.log("提交成功!")
  55. that.attr('data-type',"1"); //这里的 1 是返回点赞成功或取消的值
  56. }
  57. }
  58. });
  59. })
  60. // 监听播放按钮,点击播放次数
  61. document.getElementsByClassName("poay")[0].addEventListener("click",
  62. function() {
  63. var id = $("#oid").attr('data-id');
  64. $.ajax({
  65. url:'/video/plays',
  66. dataType:"json",
  67. type:'GET',
  68. data:{id:id},
  69. success:function(data){
  70. }
  71. });
  72. })
  73. /*-------------------------------------------cookie方法封装--------------------------------------------------------------------*/
  74. var cookie = {
  75. //设置cookie方法
  76. set:function(key,val,time){
  77. var date=new Date(); //获取当前时间
  78. var expiresDays=time; //将date设置为n天以后的时间
  79. date.setTime(date.getTime()+expiresDays*24*3600*1000); //格式化为cookie识别的时间
  80. document.cookie=key + "=" + val +";expires="+date.toGMTString(); //设置cookie
  81. },
  82. //获取cookie方法
  83. get:function(key){
  84. /*获取cookie参数*/
  85. var getCookie = document.cookie.replace(/[ ]/g,""); //获取cookie,并且将获得的cookie格式化,去掉空格字符
  86. var arrCookie = getCookie.split(";") //将获得的cookie以"分号"为标识 将cookie保存到arrCookie的数组中
  87. var tips; //声明变量tips
  88. for(var i=0;i<arrCookie.length;i++){ //使用for循环查找cookie中的tips变量
  89. var arr=arrCookie[i].split("="); //将单条cookie用"等号"为标识,将单条cookie保存为arr数组
  90. if(key==arr[0]){ //匹配变量名称,其中arr[0]是指的cookie名称,如果该条变量为tips则执行判断语句中的赋值操作
  91. tips=arr[1]; //将cookie的值赋给变量tips
  92. break; //终止for循环遍历
  93. }
  94. }
  95. return tips;
  96. },
  97. //删除cookie方法
  98. delete:function(key){
  99. var date = new Date(); //获取当前时间
  100. date.setTime(date.getTime()-10000); //将date设置为过去的时间
  101. document.cookie = key + "=v; expires =" +date.toGMTString();//设置cookie
  102. }
  103. }
  104. // 存储、读取
  105. // cookie.set("ID"+lpid,"54165165",24);//设置为24天过期
  106. // console.log(cookie.get("ID"+lpid));//获取cookie
  107. // 当报名过后,在当前浏览器再次打开对应的视频,不需要再进行报名就直接进行观看。存储的cookie 值为 7天
  108. // cookie.delete("ID"+lpid)
  109. // console.log(coki)
  110. var coki = cookie.get("ID"+lpid);
  111. //当cookie 没有存储时,不进行修改;
  112. if(coki != undefined){
  113. $('#oid').attr('data-off',coki);
  114. }
  115. /*-------------------------------------------提交报名--------------------------------------------------------------------*/
  116. var PublicActions = {
  117. /* AjaxSend-----Ajax发送*/
  118. "AjaxSend" :function(e,fnEnd){
  119. var self = this, result;
  120. // 获取
  121. var oid = e.CORID, //ID
  122. url = '/enroll/signup', //提交地址
  123. type = "POST", //提交方式
  124. async = true; //同步或异步
  125. //点击提交按钮触发事件
  126. $('.'+ oid).on('click',function(){
  127. var $than =$(this);
  128. $than.attr('disabled','disabled');
  129. var that = $(this).parents('form.submit_area'); //获取当前父层
  130. var data = {}, //定义一个对象
  131. ControlSwitch = true; //定义一个开关
  132. that.find('input').each(function () { //遍历父层中所有input
  133. var name = $(this).attr('name'); //当前input 中有name属性
  134. if(typeof name == 'string'){ //input 标签中有name属性才进行以下操作
  135. var txt = $(this).val(); //input 值
  136. var InputName = $(this).attr('name'); //属于 name 的值
  137. txt = self.FilterHTMLTag(txt); //去掉标签
  138. /* 验证电话码号 */
  139. if(InputName == 'mobile'){
  140. if(txt != ""){
  141. if(! self.PhoneVerification(txt)){ //验证电话号码
  142. // 特殊处理
  143. $('body .alert-container').remove(); //删除尾部添加弹窗
  144. self.hint('请输入正确的手机号码!');
  145. $than.removeAttr('disabled');
  146. ControlSwitch = false; //开关为false
  147. return false;
  148. }
  149. }else {
  150. $('body .alert-container').remove(); //删除尾部添加弹窗
  151. self.hint('请输入正确的手机号码!');
  152. $than.removeAttr('disabled');
  153. ControlSwitch = false; //开关为false
  154. return false;
  155. }
  156. }
  157. data[InputName]=txt;
  158. }
  159. })
  160. if(ControlSwitch){ //当电话号码验证不通过时,不执行以下操作
  161. $.ajax({
  162. type:type,
  163. url:url,
  164. data:data,
  165. async:async,
  166. dataType:'json',
  167. error : function(request) {
  168. // alert("未提交成功!");
  169. // 特殊处理
  170. $('body .alert-container').remove(); //删除尾部添加弹窗
  171. self.hint('未提交成功!');
  172. $than.removeAttr('disabled');
  173. },
  174. success : function(data) {
  175. $('body .alert-container').remove(); //删除尾部添加弹窗
  176. var msg = data.msg;
  177. if(data.data != null){
  178. msg = ReturnInfo(data.data);
  179. /*判断调方法时,是否传回调方法;有则执行,否执行默认方法*/
  180. fnEnd ? fnEnd() : self.hint(msg);
  181. $than.removeAttr('disabled');
  182. return ;
  183. }
  184. /*判断调方法时,是否传回调方法;有则执行,否执行默认方法*/
  185. fnEnd ? fnEnd() : self.hint(msg);
  186. // RemoveDiv(); //数据提交成功后关闭弹出层
  187. shutFn();
  188. $than.removeAttr('disabled');
  189. cookie.set("ID"+lpid,"0",7);//设置为7天过期
  190. $('#oid').attr('data-off',"0"); //报名成功后,修改属性值
  191. }
  192. });
  193. event.preventDefault(); //阻止form表单默认提交
  194. return false;
  195. }
  196. })
  197. },
  198. /*-----------------------------------------------------------------------------------------*/
  199. /* 过滤代码标签 */
  200. "FilterHTMLTag" : function(htmlStr){
  201. var msg = htmlStr.replace(/<\/?[^>]*>/g, ''); //去除HTML Tag
  202. return msg;
  203. },
  204. /*-----------------------------------------------------------------------------------------*/
  205. /* 电话验证 */
  206. "PhoneVerification" : function (tel) {
  207. var pattern = /(13\d|14[57]|15[^4,\D]|17[678]|18\d)\d{8}$|170[059]\d{7}$/,
  208. str = tel;
  209. return pattern.test(tel);
  210. },
  211. /*-----------------------------------------------------------------------------------------*/
  212. /* 提示方法优化 */
  213. "hint":function(txt){
  214. /*调用方法*/
  215. var M = {};
  216. if(M.dialog1){
  217. return M.dialog1.show();
  218. }
  219. M.dialog1 = jqueryAlert({
  220. 'content' : txt, //txt 提示内容
  221. 'closeTime' : 2000,
  222. })
  223. },
  224. }
  225. //报名验证及提交的调用
  226. PublicActions.AjaxSend(
  227. {
  228. CORID:'apply_bmipc', /*操作ID*/
  229. }
  230. );
  231. })