Commit 4bbe2fb92895250ad002f965a6e4a800488c6f86
1 parent
d855bea0
全屏广告的控制
Showing
4 changed files
with
69 additions
and
9 deletions
pages/index/index/full_screen.js
0 → 100644
| 1 | + module.exports = { | ||
| 2 | + //判断要不要显示全屏广告 | ||
| 3 | + get_the_full_screen(th){ | ||
| 4 | + var stoid=getApp().globalData.setting.stoid; | ||
| 5 | + if(th.data.full_ad) { | ||
| 6 | + return false; | ||
| 7 | + } | ||
| 8 | + //获取全屏的广告 | ||
| 9 | + getApp().promiseGet("/api/weshop/ad/page?pid=1001&store_id=" + stoid,{ | ||
| 10 | + data: { enabled: 1 } | ||
| 11 | + }).then(res=>{ | ||
| 12 | + //判断是不是有全屏广告 | ||
| 13 | + if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){ | ||
| 14 | + th.setData({ | ||
| 15 | + is_full_screen_show:1, | ||
| 16 | + full_ad:res.data.data.pageData[0], | ||
| 17 | + }) | ||
| 18 | + //--定时关闭-- | ||
| 19 | + th.data.full_screen=setInterval(function(){ | ||
| 20 | + if(!th.data.sec_show) { | ||
| 21 | + clearInterval(th.data.full_screen); | ||
| 22 | + th.close_full_screen(); | ||
| 23 | + return false; | ||
| 24 | + } | ||
| 25 | + th.data.sec_show--; | ||
| 26 | + th.setData({sec_show:th.data.sec_show}); | ||
| 27 | + },1000) | ||
| 28 | + } | ||
| 29 | + }) | ||
| 30 | + } | ||
| 31 | +} | ||
| 0 | \ No newline at end of file | 32 | \ No newline at end of file |
pages/index/index/index.js
| @@ -15,6 +15,7 @@ var regeneratorRuntime = require('../../../utils/runtime.js'); | @@ -15,6 +15,7 @@ var regeneratorRuntime = require('../../../utils/runtime.js'); | ||
| 15 | var api = require('../../../api/api.js'); | 15 | var api = require('../../../api/api.js'); |
| 16 | var d = getApp().globalData; | 16 | var d = getApp().globalData; |
| 17 | 17 | ||
| 18 | +var full_screen = require('full_screen.js'); | ||
| 18 | 19 | ||
| 19 | Page({ | 20 | Page({ |
| 20 | data: { | 21 | data: { |
| @@ -75,13 +76,17 @@ Page({ | @@ -75,13 +76,17 @@ Page({ | ||
| 75 | 76 | ||
| 76 | showHongbao: false, | 77 | showHongbao: false, |
| 77 | showHongbaoSmall: false, | 78 | showHongbaoSmall: false, |
| 78 | - | 79 | + |
| 80 | + is_full_screen_show:0, //全屏显示 | ||
| 81 | + sec_show:3, //倒计时的秒数 | ||
| 82 | + full_ad:null, //全屏广告 | ||
| 83 | + full_screen:0, //全屏广告 | ||
| 84 | + | ||
| 79 | }, | 85 | }, |
| 80 | 86 | ||
| 81 | onLoad: async function(tt) { | 87 | onLoad: async function(tt) { |
| 82 | console.log("进入首页-------------"); | 88 | console.log("进入首页-------------"); |
| 83 | - console.log(tt); | ||
| 84 | - | 89 | + console.log(tt); |
| 85 | var th = this; | 90 | var th = this; |
| 86 | var first_leader=tt.first_leader; | 91 | var first_leader=tt.first_leader; |
| 87 | if(!first_leader && tt.scene){ | 92 | if(!first_leader && tt.scene){ |
| @@ -97,7 +102,7 @@ Page({ | @@ -97,7 +102,7 @@ Page({ | ||
| 97 | getApp().globalData.guide_id=res.data.data.id; | 102 | getApp().globalData.guide_id=res.data.data.id; |
| 98 | } | 103 | } |
| 99 | }) | 104 | }) |
| 100 | - } | 105 | + } |
| 101 | 106 | ||
| 102 | // 判断是否有红包活动 | 107 | // 判断是否有红包活动 |
| 103 | getApp().request.promiseGet('/api/weshop/redmoney/redConfig/get/'+getApp().globalData.setting.stoid, { | 108 | getApp().request.promiseGet('/api/weshop/redmoney/redConfig/get/'+getApp().globalData.setting.stoid, { |
| @@ -146,7 +151,6 @@ Page({ | @@ -146,7 +151,6 @@ Page({ | ||
| 146 | 151 | ||
| 147 | await this.init_load(); | 152 | await this.init_load(); |
| 148 | 153 | ||
| 149 | - | ||
| 150 | //显示的时候要开启计时器 | 154 | //显示的时候要开启计时器 |
| 151 | this.data.is_timer = 1; | 155 | this.data.is_timer = 1; |
| 152 | //如果是自定义模板 | 156 | //如果是自定义模板 |
| @@ -255,9 +259,8 @@ Page({ | @@ -255,9 +259,8 @@ Page({ | ||
| 255 | if(!userInfo || !userInfo.user_id) userInfo=null; | 259 | if(!userInfo || !userInfo.user_id) userInfo=null; |
| 256 | //有加载过一次首页,就显示 | 260 | //有加载过一次首页,就显示 |
| 257 | if(show || userInfo || getApp().globalData.user_id){ | 261 | if(show || userInfo || getApp().globalData.user_id){ |
| 258 | - setTimeout(function(){ | ||
| 259 | - var full_screen = th.selectComponent("#full_screen"); //组件的id | ||
| 260 | - full_screen.get_the_full_screen(); | 262 | + setTimeout(function(){ |
| 263 | + full_screen.get_the_full_screen(th); | ||
| 261 | },800) | 264 | },800) |
| 262 | //动画效果 | 265 | //动画效果 |
| 263 | if(!th.data.f_hidden){ | 266 | if(!th.data.f_hidden){ |
| @@ -282,6 +285,8 @@ Page({ | @@ -282,6 +285,8 @@ Page({ | ||
| 282 | this.data.is_timer = 0; | 285 | this.data.is_timer = 0; |
| 283 | clearInterval(this.data.pt_timer); | 286 | clearInterval(this.data.pt_timer); |
| 284 | clearInterval(this.data.w_holiday_pop); | 287 | clearInterval(this.data.w_holiday_pop); |
| 288 | + clearInterval(this.data.full_screen); | ||
| 289 | + | ||
| 285 | this.data.w_holiday_pop=0; | 290 | this.data.w_holiday_pop=0; |
| 286 | for(var i = 1; i < 100; i++) { | 291 | for(var i = 1; i < 100; i++) { |
| 287 | clearInterval(i); | 292 | clearInterval(i); |
| @@ -1005,5 +1010,17 @@ Page({ | @@ -1005,5 +1010,17 @@ Page({ | ||
| 1005 | showHongbaoSmall: true, //显示抢红包小图标 | 1010 | showHongbaoSmall: true, //显示抢红包小图标 |
| 1006 | }); | 1011 | }); |
| 1007 | }, | 1012 | }, |
| 1013 | + | ||
| 1014 | + /*-- 全屏广告 --*/ | ||
| 1015 | + close_full_screen(){ | ||
| 1016 | + this.setData({is_full_screen_show:0,sec_show:0}); | ||
| 1017 | + }, | ||
| 1018 | + //-- 跳转到满屏广告的链接 -- | ||
| 1019 | + go_full_ad(){ | ||
| 1020 | + if(!this.data.full_ad) return false; | ||
| 1021 | + if(!this.data.full_ad.ad_weapplink) return false; | ||
| 1022 | + getApp().goto(this.data.full_ad.ad_weapplink); | ||
| 1023 | + this.close_full_screen(); | ||
| 1024 | + }, | ||
| 1008 | 1025 | ||
| 1009 | }); | 1026 | }); |
| 1010 | \ No newline at end of file | 1027 | \ No newline at end of file |
pages/index/index/index.wxml
| 1 | <!-- <view hidden="{{f_hidden}}" class="full_screen" style="background-color: #fff;"></view> --> | 1 | <!-- <view hidden="{{f_hidden}}" class="full_screen" style="background-color: #fff;"></view> --> |
| 2 | -<full_screen id="full_screen"></full_screen> | 2 | +<!-- <full_screen id="full_screen"></full_screen> --> |
| 3 | + | ||
| 4 | +<!-- 全屏控制 --> | ||
| 5 | +<view wx:if="{{is_full_screen_show}}" class="full_screen" bindtap="go_full_ad" style="background-image: url('{{url+full_ad.ad_code}}');"> | ||
| 6 | + <view catchtap="close_full_screen" class="skip_box">跳过 <text>{{sec_show}}</text></view> | ||
| 7 | +</view> | ||
| 8 | + | ||
| 3 | <!--普通界面--> | 9 | <!--普通界面--> |
| 4 | <wxs module="filter" src="../../../utils/filter.wxs"></wxs> | 10 | <wxs module="filter" src="../../../utils/filter.wxs"></wxs> |
| 5 | 11 |
pages/index/index/index.wxss
| @@ -977,3 +977,9 @@ page { | @@ -977,3 +977,9 @@ page { | ||
| 977 | background-size: 100% 100%; | 977 | background-size: 100% 100%; |
| 978 | background-repeat: no-repeat; | 978 | background-repeat: no-repeat; |
| 979 | } | 979 | } |
| 980 | +.skip_box{ | ||
| 981 | + float: right; margin-top: 10rpx; margin-right: 10rpx; | ||
| 982 | + background-color: gainsboro; width: 120rpx; | ||
| 983 | + height: 48rpx; font-size: 28rpx; line-height: 48rpx; | ||
| 984 | + text-align: center; border-radius: 20rpx; | ||
| 985 | + } |