You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1896 lines
47 KiB

<template>
<view class="page" v-if="isload">
<view class="video-info" >
<view class="video-info__top">
<view class="video-info__title">{{videoDataList[_videoDataIndex].name}}</view>
<view class="video-info__txt">{{videoDataList[_videoDataIndex].description}}
</view>
<view class="video-info__topic flex al-item-center">
<view class="topic-item flex al-item-center" v-for="(items,indexs) in videoDataList[_videoDataIndex].topiclist" :key='indexs'>
<view class="topic-item__icon flex al-item-center j-center">
<text>#</text>
</view>
<view class="topic-item__name" @click="goto" :data-url="'/diary/topic/topic?id='+items.id">{{items.topic_name}}</view>
</view>
</view>
</view>
<view class="video-info__bot flex al-item-center j-between">
<view class="video-info__user flex al-item-center" @tap="gotourl" :data-url="videoDataList[_videoDataIndex].mid==0?'/pages/index/index':'/diary/info/info?id='+videoDataList[_videoDataIndex].mid">
<image class="user-header" :src="videoDataList[_videoDataIndex].binfo.logo" mode=""></image>
<view class="user-name">{{videoDataList[_videoDataIndex].binfo.name}}</view>
</view>
<view class="video-info__detail flex al-item-center">
<view class="product-info position-r">
<view class="product-info__entry flex al-item-center j-center" style="align-items: center;" v-if="videoDataList[_videoDataIndex].pronum > 0" @tap="proboxClick">
<text class="iconfont icon-shangpin"></text>
</view>
<view class="product-info__card position-a" style="position: absolute;" :style="menuindex > -1 ? 'bottom:230rpx':''"
v-if="!videoDataList[_videoDataIndex].linkurl && prodialogshow && videoDataList[_videoDataIndex].proid > 0"
@tap="gotourl" :data-url="'/pages/shop/product?id='+videoDataList[_videoDataIndex].proid">
<image class="card-bgimg position-a" style="position: absolute;" :src="event_rul +'/static/img/static/img/shortvideo_probg.png'"></image>
<view class="card-con flex">
<image class="card-hd" :src="videoDataList[_videoDataIndex].propic"></image>
<view class="card-bd">
<text class="card-bd__name">{{videoDataList[_videoDataIndex].proname}}</text>
<text class="card-bd__sales">{{videoDataList[_videoDataIndex].prosales}}人购买</text>
<text class="card-bd__price">¥{{videoDataList[_videoDataIndex].prosell_price}}</text>
</view>
</view>
<image class="card-close position-a" style="position: absolute;" :src="event_rul +'/static/img/static/img/close.png'" @tap.stop="prodialogClose" />
</view>
</view>
<view class="info-item flex al-item-center" @tap="shareClick">
<text class="iconfont icon-zhuanfa"></text>
<text class="info-item__txt">{{videoDataList[_videoDataIndex].share_num >= 10000 ? (videoDataList[_videoDataIndex].share_num / 10000).toFixed(1)+'万': videoDataList[_videoDataIndex].share_num}}</text>
</view>
<view class="info-item flex al-item-center" @tap="dozan">
<text v-if="!videoDataList[_videoDataIndex].iszan" class="iconfont icon-aixin"></text>
<text v-else style="color: #EC2828;" class="iconfont icon-aixin_shixin"></text>
<text class="info-item__txt">{{videoDataList[_videoDataIndex].zan_num >= 10000 ? (videoDataList[_videoDataIndex].zan_num / 10000).toFixed(1)+'万': videoDataList[_videoDataIndex].zan_num}}</text>
</view>
<view class="info-item flex al-item-center" @tap="favFn">
<text v-if="!videoDataList[_videoDataIndex].isfavorite" class="iconfont icon-shoucang"></text>
<text v-else style="color: #EC2828;" class="iconfont icon-Collection"></text>
<text class="info-item__txt">{{videoDataList[_videoDataIndex].favoriteCount >= 10000 ? (videoDataList[_videoDataIndex].favoriteCount / 10000).toFixed(1)+'万': videoDataList[_videoDataIndex].favoriteCount}}</text>
</view>
<view class="info-item flex al-item-center" @tap="commentClick" v-if="videoDataList[_videoDataIndex].comment==1">
<text class="iconfont icon-xiaoxi" style="font-size: 44rpx;"></text>
<text class="info-item__txt">{{videoDataList[_videoDataIndex].comment_count >= 10000 ? (videoDataList[_videoDataIndex].comment_count / 10000).toFixed(1)+'万': videoDataList[_videoDataIndex].comment_count}}</text>
</view>
</view>
</view>
</view>
<swiper class="swiper" :circular="circular" :vertical="true" @change="onSwiperChange">
<swiper-item v-for="item in videoList" :key="item.id">
<video class="video" :id="item.id" :ref="item.id" :src="item.src" :controls="false" :loop="true"
:show-center-play-btn="false" @timeupdate="cece2" @tap="playpause" @pause='isStop = true' @play="onplay"></video>
</swiper-item>
</swiper>
<view class="goback" :style="{top:gobacktopHeight+'px'}" style="flex-direction: initial;">
<!-- <image class="goback-img" :src="event_rul +'/static/img/static/img/goback.png'" /> -->
<text class="iconfont icon-icon_arrow_left" style="color: #fff; font-size: 40rpx;" @tap="goback"></text>
<button type="default" v-if="videoDataList[_videoDataIndex].isMy" class="right-d flex flex-colum al-item-center j-around" @tap="edSle(videoDataList[_videoDataIndex].id)" :style="{'background-color':'transparent'}">
<text class="d1 border-rius-r"></text>
<text class="d1 border-rius-r"></text>
<text class="d1 border-rius-r"></text>
</button>
</view>
<!-- <view class="title" :style="menuindex > -1 ? 'bottom:270rpx':''"><text class="title-txt">{{videoDataList[_videoDataIndex].name}}</text></view> -->
<!-- <view class="description" :style="menuindex > -1 ? 'bottom:170rpx':''"><text class="description-txt">{{videoDataList[_videoDataIndex].description}}</text></view> -->
<loading v-if="loading"></loading>
<dp-tabbar :opt="opt" @getmenuindex="getmenuindex"></dp-tabbar>
<popmsg ref="popmsg"></popmsg>
<view class="popupshare__content" v-if="sharetypevisible" :style="menuindex > -1 ? 'bottom:110rpx':''">
<image :src="event_rul +'/static/img/static/img/close.png'" class="popupshare__close2" @tap.stop="handleClickMask" />
<view class="sharetypecontent">
<view class="sharetypecontent-f1" @tap="shareapp" v-if="platform == 'app'">
<image class="sharetypecontent-f1-img" :src="event_rul +'/static/img/static/img/weixin.png'" />
<text class="sharetypecontent-f1-t1">分享给好友</text>
</view>
<view class="sharetypecontent-f1" @tap="sharemp" v-else-if="platform == 'mp'">
<image class="sharetypecontent-f1-img" :src="event_rul +'/static/img/static/img/weixin.png'" />
<text class="sharetypecontent-f1-t1">分享给好友</text>
</view>
<view class="sharetypecontent-f1" @tap="sharemp" v-else-if="platform == 'h5'">
<image class="sharetypecontent-f1-img" :src="event_rul +'/static/img/static/img/weixin.png'" />
<text class="sharetypecontent-f1-t1">分享给好友</text>
</view>
<button class="sharetypecontent-f1" open-type="share" v-else @click="sharMust">
<image class="sharetypecontent-f1-img" :src="event_rul +'/static/img/static/img/weixin.png'" />
<text class="sharetypecontent-f1-t1">分享给好友</text>
</button>
<view class="sharetypecontent-f2" @tap="showPoster">
<image class="sharetypecontent-f2-img" :src="event_rul +'/static/img/static/img/sharepic.png'" />
<text class="sharetypecontent-f2-t1">生成分享图片</text>
</view>
</view>
</view>
<view class="posterDialog" v-if="showposter">
<view class="posterDialog-main">
<view class="posterDialog-close" @tap="posterDialogClose">
<image class="posterDialog-img" :src="event_rul +'/static/img/static/img/close.png'" />
</view>
<view class="posterDialog-content">
<image class="posterDialog-content-img" :src="posterpic" mode="widthFix" @tap="previewImage"
:data-url="posterpic"></image>
</view>
</view>
</view>
<!--评论-->
<view class="plbox" v-if="showcomment" :style="menuindex > -1 ? 'bottom:110rpx':''">
<view class="plbox_title"><text class="plbox_title-t1">评论</text><text
class="plbox_title-t2">({{videoDataList[_videoDataIndex].comment_count}})</text></view>
<image :src="event_rul +'/static/img/static/img/close.png'" class="plbox-close" @tap.stop="commentClick" />
<scroll-view class="plbox_content" scroll-y="true" @scrolltolower="getmorecomment">
<block v-for="(item, idx) in commentlist" :key="idx">
<view class="plbox_content-item">
<view class="plbox_content-item-f1 flex0">
<image :src="item.headimg" class="plbox_content-item-f1-img"></image>
</view>
<view class="plbox_content-item-f2 flex-col">
<text class="plbox_content-item-f2-t1">{{item.nickname}}</text>
<view class="plbox_content-item-f2-t2 plbox_content-plcontent flex j-between">
<view class="plbox_content-item-f2__con" v-for="con in item.content" :key='con'>
<text v-if="con.type=='text'"
class="plbox_content-plcontent-text">{{con.content}}</text>
<image v-if="con.type=='image'" :src="con.content"
class="plbox_content-plcontent-image"></image>
</view>
<view class="plbox_content-item-f2-pzan" @tap="pzan" :data-id="item.id" :data-index="idx">
<text v-if="item.iszan ==1" style="color: red; margin-right: 10rpx; " class="iconfont icon-aixin_shixin"></text>
<text v-else style="margin-right: 10rpx; " class="iconfont icon-aixin"></text>
<text class="plbox_content-item-f2-pzan-txt">{{item.zan}}</text>
</view>
</view>
<block v-if="item.replylist.length>0">
<view class="plbox_content-relist">
<block v-for="(hfitem, index) in item.replylist" :key="index">
<view class="plbox_content-relist-item2">
<view class="flex-row">
<image :src="hfitem.headimg" class="plbox_content-relist-headimg" />
<text class="plbox_content-relist-nickname">{{hfitem.nickname}}</text>
</view>
<view class="plbox_content-relist-f2 plbox_content-plcontent">
<block v-for="con in hfitem.content" :key='con'>
<text v-if="con.type=='text'"
class="plbox_content-plcontent-text">{{con.content}}</text>
<image v-if="con.type=='image'" :src="con.content"
class="plbox_content-plcontent-image"></image>
</block>
</view>
</view>
</block>
</view>
</block>
<view class="plbox_content-item-f2-t3">
<text class="plbox_content-item-f2-t3-x1">{{item.createtime}}</text>
<view class="plbox_content-item-f2-t3-x2" @click="indexFn(item.mid)"><text
class="plbox_content-item-f2-phuifu" @tap="replyClick" :data-id="item.id"
:data-nickname="item.nickname">回复</text></view>
</view>
</view>
</view>
</block>
<view v-if="nomore"><text class="comment-nomore">没有更多数据了</text></view>
<view v-if="nodata"><text class="comment-nodata">暂无评论!</text></view>
</scroll-view>
<loading v-if="loading"></loading>
<view class="plbox-replyshadow" v-if="hfid!=0" @tap.stop="replyshadowClick"></view>
<view class="pinglun">
<view class="pinglun-bd flex al-item-center">
<text @tap="toggleFaceBox" class="iconfont icon-qianbi"></text>
<input @confirm="sendMessage" @focus="onInputFocus" @input="messageChange" class="pinglun-input"
confirmHold="true" confirmType="send" cursorSpacing="20" type="text" :value="message"
:placeholder="messageholder" />
</view>
<view class="pinglun-buybtn" @tap="sendcomment(item)"><text class="pinglun-buybtn-txt">发表</text></view>
</view>
<wxface v-if="faceshow" @selectface="selectface"></wxface>
</view>
<!--商品-->
<view class="probox" v-if="showproduct" :style="menuindex > -1 ? 'bottom:110rpx':''">
<view class="probox_title"><text class="probox_title-t1">全部商品</text><text
class="plbox_title-t2">({{videoDataList[_videoDataIndex].pronum}})</text></view>
<image :src="event_rul +'/static/img/static/img/close.png'" class="plbox-close" @tap.stop="proboxClick" />
<scroll-view class="probox_content" scroll-y="true">
<block v-for="(item, idx) in prolist" :key="item.id">
<view class="probox_content-item" @tap="gotourl" :data-url="'/pages/shop/product?id='+item.id" :data-sign="item.sign" :data-item="item">
<image :src="item.pic" class="probox_content-item-img" />
<view class="probox_content-item-info">
<text class="probox_content-item-name">{{item.name}}</text>
<text class="probox_content-item-sales">{{item.sales}}人购买</text>
<text class="probox_content-item-price" :style="{'color': t('color1')} || '#EFBD6F'">¥{{item.sell_price}}</text>
</view>
<view class="probox_content-item-btn"><text class="probox_content-item-btn-txt">立即抢购</text></view>
</view>
</block>
</scroll-view>
</view>
<view @click="playClick" class="stop_box2" v-if="isStop">
<text style="font-size: 140rpx;" class="iconfont icon-bofang"></text>
</view>
<view class="stop_box" v-if="isStop">
{{formatSeconds(Math.ceil(minKey))}} <slider block-size='12' backgroundColor='rgba(255,255,255,0.5)' block-color='#fff' activeColor='#fff' style="flex:1;" :value="minKey" @change="cece" min="0" :max="maxKey" />{{formatSeconds(Math.ceil(maxKey))}}
</view>
<view class="hitn-n position-f" v-show="hintShow">
<view class="hint-bx position-a">
<image class="hint-img" :src="event_rul + '/static/images/hint-n.png'" mode="widthFix"></image>
<view class="content position-a flex flex-colum al-item-center">
<text class="h-title font-w">温馨提示</text>
<text class="text">该视频已删除!</text>
</view>
</view>
</view>
<!-- 悬浮按钮 -->
<drag-button></drag-button>
</view>
</template>
<script>
var app = getApp();
export default {
data() {
return {
isStop:false,
opt: {},
loading: false,
isload: false,
menuindex: -1,
minKey:0,
maxKey:0,
nomore: false,
nodata: false,
platform: app.globalData.platform,
gobacktopHeight: 40,
userId: '',
playst: true,
circular: true,
videoList: [{
id: "video0",
src: "",
img: ""
}, {
id: "video1",
src: "",
img: ""
}, {
id: "video2",
src: "",
img: ""
}],
_videoDataIndex: 0,
videoDataList: [],
prodialogshow: true,
sharetypevisible: false,
showposter: false,
posterpic: "",
showcomment: false,
commentlist: [],
pagenum: 1,
message: "",
trimMessage: "",
faceshow: false,
hfid: 0,
messageholder: '发表评论',
showproduct: false,
prolist: [],
isplay: false,
isplayst: true,
event_rul: app.globalData.event_url,
hintShow:false,
hintTime: null,
}
},
onLoad: function(opt) {
this.opt = app.getopts(opt);
},
onUnload() {
clearTimeout(this.hintTime)
},
onReady() {
this.init();
this.getdata();
var sysinfo = uni.getSystemInfoSync();
console.log(sysinfo);
if (sysinfo && sysinfo.statusBarHeight) {
this.gobacktopHeight = sysinfo.statusBarHeight + 4;
}
// #ifdef H5
this.gobacktopHeight = 20;
// #endif
},
onShareAppMessage: function() {
return this._sharewx({
title: this.videoDataList[this._videoDataIndex].name,
pic: this.videoDataList[this._videoDataIndex].coverimg
});
},
onShareTimeline: function() {
var sharewxdata = this._sharewx({
title: this.videoDataList[this._videoDataIndex].name,
pic: this.videoDataList[this._videoDataIndex].coverimg
});
var query = (sharewxdata.path).split('?')[1];
return {
title: sharewxdata.title,
imageUrl: sharewxdata.imageUrl,
query: query
}
},
methods: {
// 编辑、删除
edSle(id) {
uni.showActionSheet({
itemList: ['编辑视频', '删除视频'],
success: res => {
if(res.tapIndex == 0) {
this.editData(id)
}else {
this.delDrafts(id)
}
// console.log('选中了第' + (res.tapIndex + 1) + '个按钮', id);
},
fail: function (res) {
// console.log(res.errMsg);
}
});
},
// 编辑视频
editData(id) {
let url = 'ApiShortvideo/newDetail'
let dataurl = '/diary/issue/issue?type=video'
app.post(url, {
id: id,
// isdraft: 1
}, res => {
if(res.status == 1) {
uni.navigateTo({
url:dataurl+'&editId='+ id + '&detail='+JSON.stringify(res.video) + '&recordlist=' + JSON.stringify(res.proList)
})
}else {
app.error(res.msg)
}
})
},
// 删除笔记
delDrafts(id) {
uni.showModal({
title: '提示',
content: '确认删除该视频吗?',
confirmColor: this.t('color1'),
success: (res) => {
if (res.confirm) {
app.get('ApiShortvideo/delvideo',{id:id},(res)=>{
if(res.status == 1) {
app.error(res.msg)
this.timeouts = setTimeout(() => {
uni.navigateBack()
}, 1200)
}else {
app.error(res.msg)
}
})
} else if (res.cancel) {
}
}
});
},
// 分享必调的接口
sharMust() {
app.post('ApiShortvideo/shareNum', {
type: this.opt.type,
id: this.videoDataList[this._videoDataIndex].id
}, res => {
})
},
formatSeconds(time){
let newTime,hour,minite,seconds;
if(time >= 3600){
hour = parseInt(time/3600) < 10 ? '0' + parseInt(time/3600) : parseInt(time/3600) ;
minite = parseInt(time%60/60) < 10 ? '0' + parseInt(time%60/60):parseInt(time%60/60);
seconds = time%3600 < 10 ? '0' + time%3600 : time%3600;
newTime = hour + ':' + minite + ':' + seconds;
}else if(time >= 60 && time < 3600){
minite = parseInt(time/60) < 10 ? '0' + parseInt(time/60) : parseInt(time/60);
seconds = time%60 < 10 ? '0' + time%60 : time%60;
newTime = minite + ':' + seconds;
}else if(time < 60 ){
seconds = time < 10 ? '0' + time : time;
newTime = '00:'+ seconds;
}
return newTime;
}
,
formatSeconds1(value) {
let result = parseInt(value)
let h = Math.floor(result / 3600) < 10 ? '0' + Math.floor(result / 3600) : Math.floor(result / 3600);
let m = Math.floor((result / 60 % 60)) < 10 ? '0' + Math.floor((result / 60 % 60)) : Math.floor((result / 60 % 60));
let s = Math.floor((result % 60)) < 10 ? '0' + Math.floor((result % 60)) : Math.floor((result % 60));
let res = '';
if(h !== '00') res += `${h}h`;
if(m !== '00') res += `${m}min`;
res += `${s}s`;
return res
},
cece2(e){
// console.log(Math.ceil(e.detail.currentTime))
this.minKey = e.detail.currentTime
this.maxKey = e.detail.duration
},
cece(e){
console.log(e.detail.value)
this._videoContextList[this._videoIndex].seek(e.detail.value);
}
,
favFn(){
// that.videoDataList[that._videoDataIndex]
let that = this
app.post('ApiShop/addfavorite',{proid:that.videoDataList[that._videoDataIndex].id,type:'video'},res=>{
console.log(res)
if(res.msg == '已收藏'){
that.videoDataList[that._videoDataIndex].isfavorite = true;
that.videoDataList[that._videoDataIndex].favoriteCount++
}else{
that.videoDataList[that._videoDataIndex].isfavorite = false;
that.videoDataList[that._videoDataIndex].favoriteCount--
}
})
},
indexFn(e) {
this.userId = e;
},
init() {
this._videoIndex = 0;
this._videoContextList = [];
for (var i = 0; i < this.videoList.length; i++) {
this._videoContextList.push(uni.createVideoContext('video' + i, this));
}
this._videoDataIndex = 0;
},
getdata(e) {
var that = this;
that.nomore = false;
that.loading = true;
uni.showLoading({
title: '加载中...'
});
app.post('ApiShortvideo/detail', {
id: that.opt.id,
cid: that.opt.cid
}, function(res) {
uni.hideLoading()
that.loading = false;
that.isload = true;
if(res.status == 1 && res.videoList[0].id == that.opt.id && res.videoList[0].is_del == 1 ) {
that.hintShow = true
that.hintTime = setTimeout(() => {
that.hintShow = false
uni.navigateBack()
}, 2000)
return
}
that.videoDataList = res.videoList;
// #ifndef APP-PLUS
that.loaded({
title: that.videoDataList[that._videoDataIndex].name,
desc: that.videoDataList[that._videoDataIndex].description,
pic: that.videoDataList[that._videoDataIndex].coverimg
});
// #endif
setTimeout(() => {
that.updateVideo(true);
}, 200)
});
},
onSwiperChange(e) {
let currentIndex = e.detail.current;
if (currentIndex === this._videoIndex) {
return;
}
let isNext = false;
if (currentIndex === 0 && this._videoIndex === this.videoList.length - 1) {
isNext = true;
} else if (currentIndex === this.videoList.length - 1 && this._videoIndex === 0) {
isNext = false;
} else if (currentIndex > this._videoIndex) {
isNext = true;
}
if (isNext) {
this._videoDataIndex++;
} else {
this._videoDataIndex--;
}
if (this._videoDataIndex < 0) {
this._videoDataIndex = this.videoDataList.length - 1;
} else if (this._videoDataIndex >= this.videoDataList.length) {
this._videoDataIndex = 0;
}
this.circular = (this._videoDataIndex != 0);
if (this._videoIndex >= 0) {
this._videoContextList[this._videoIndex].pause();
this._videoContextList[this._videoIndex].seek(0);
}
this._videoIndex = currentIndex;
setTimeout(() => {
this.updateVideo(isNext);
}, 200);
this.showcomment = false;
this.prodialogshow = true;
app.post('ApiShortvideo/updateviewnum', {
id: this.videoDataList[this._videoDataIndex].id
}, function() {});
},
getNextIndex(isNext) {
let index = this._videoIndex + (isNext ? 1 : -1);
if (index < 0) {
return this.videoList.length - 1;
} else if (index >= this.videoList.length) {
return 0;
}
return index;
},
getNextDataIndex(isNext) {
let index = this._videoDataIndex + (isNext ? 1 : -1);
if (index < 0) {
return this.videoDataList.length - 1;
} else if (index >= this.videoDataList.length) {
return 0;
}
return index;
},
onplay: function() {
this.isplay = true;
this.isplayst = true;
this.isStop = false;
},
playClick: function() {
this._videoContextList[this._videoIndex].play();
},
playpause: function() {
if (this.playst) {
this._videoContextList[this._videoIndex].pause();
} else {
this._videoContextList[this._videoIndex].play();
}
this.playst = !this.playst;
},
updateVideo(isNext) {
this.$set(this.videoList[this._videoIndex], 'src', this.videoDataList[this._videoDataIndex].src);
this.$set(this.videoList[this.getNextIndex(isNext)], 'src', this.videoDataList[this.getNextDataIndex(
isNext)].src);
this.isplay = false;
this.isplayst = true;
setTimeout(() => {
this._videoContextList[this._videoIndex].play();
}, 200);
setTimeout(() => {
if (this.isplay == false) this.isplayst = false;
}, 400)
console.log("v:" + this._videoIndex + " d:" + this._videoDataIndex + "; next v:" + this.getNextIndex(
isNext) + " next d:" + this.getNextDataIndex(isNext));
},
prodialogClose: function() {
this.prodialogshow = false
},
dozan: function() {
var that = this
app.post('ApiShortvideo/zan', {
id: this.videoDataList[this._videoDataIndex].id
}, function(res) {
that.videoDataList[that._videoDataIndex].iszan = res.iszan;
that.videoDataList[that._videoDataIndex].zan_num = res.zan_num;
});
},
proboxClick: function() {
var that = this;
this.showproduct = !this.showproduct;
if (this.showproduct) {
this.getprolist();
}
},
getprolist: function(loadmore) {
var that = this;
if (!loadmore) {
this.pagenum = 1;
this.prolist = [];
}
that.nodata = false;
that.nomore = false;
app.post('ApiShortvideo/getprolist', {
id: this.videoDataList[this._videoDataIndex].id,
pagenum: this.pagenum
}, function(res) {
var data = res.data;
if (that.pagenum == 1) {
that.prolist = data;
if (data.length == 0) {
that.nodata = true;
}
} else {
if (data.length == 0) {
that.nomore = true;
} else {
var prolist = that.prolist;
var newdata = prolist.concat(data);
that.prolist = newdata;
}
}
});
},
gotourl: function(e) {
if(e.currentTarget.dataset.sign && e.currentTarget.dataset.sign == 1) {
uni.navigateToMiniProgram({
appId: e.currentTarget.dataset.item.appid,
path: e.currentTarget.dataset.item.path + '?id=' + e.currentTarget.dataset.item.id,
success: res => {
// 打开成功
}
})
}else {
getApp().goto(e.currentTarget.dataset.url, e.currentTarget.dataset.opentype)
}
},
getmoreprolist: function() {
this.pagenum = this.pagenum + 1;
if (!this.nomore && !this.nodata) {
this.getprolist(true);
}
},
commentClick: function() {
var that = this;
this.showcomment = !this.showcomment;
if (this.showcomment) {
this.getcommentlist();
}
},
getcommentlist: function(loadmore) {
var that = this;
if (!loadmore) {
this.pagenum = 1;
this.commentlist = [];
}
that.nodata = false;
that.nomore = false;
app.post('ApiShortvideo/getcommentlist', {
id: this.videoDataList[this._videoDataIndex].id,
pagenum: this.pagenum
}, function(res) {
var data = res.data;
if (that.pagenum == 1) {
that.commentlist = data;
if (data.length == 0) {
that.nodata = true;
}
} else {
if (data.length == 0) {
that.nomore = true;
} else {
var commentlist = that.commentlist;
var newdata = commentlist.concat(data);
that.commentlist = newdata;
}
}
});
},
getmorecomment: function() {
this.pagenum = this.pagenum + 1;
if (!this.nomore && !this.nodata) {
this.getcommentlist(true);
}
},
replyClick: function(e) {
var id = e.currentTarget.dataset.id
this.message = '';
this.hfid = e.currentTarget.dataset.id;
this.messageholder = '回复 ' + e.currentTarget.dataset.nickname + ':';
},
replyshadowClick: function() {
this.hfid = 0;
this.message = '';
this.messageholder = '发表评论';
},
sendcomment: function() {
console.log('gaga', this.videoDataList[this._videoDataIndex])
var that = this;
var message = this.message;
var hfid = this.hfid;
app.showLoading('提交中');
app.post('ApiShortvideo/subpinglun', {
userId: hfid ? this.userId : '',
id: this.videoDataList[this._videoDataIndex].id,
hfid: hfid,
content: message
}, function(res) {
app.showLoading(false);
if (res.status == 0) {
app.error(res.msg);
} else {
that.videoDataList[that._videoDataIndex].comment_count++
app.error(res.msg);
that.videoDataList[that._videoDataIndex].commentnum = res.commentnum;
that.getcommentlist();
that.message = '';
that.hfid = 0;
that.messageholder = '发表评论';
that.faceshow = false;
}
});
},
pzan: function(e) {
var that = this;
var id = e.currentTarget.dataset.id;
var index = e.currentTarget.dataset.index;
var commentlist = that.commentlist;
app.post("ApiShortvideo/pzan", {
id: id
}, function(res) {
if (res.type == 0) {
//取消点赞
var iszan = 0;
} else {
var iszan = 1;
}
commentlist[index].iszan = iszan;
commentlist[index].zan = res.zancount;
that.commentlist = commentlist;
});
},
shareClick: function() {
this.sharetypevisible = !this.sharetypevisible;
},
handleClickMask: function() {
this.sharetypevisible = false
},
showPoster: function() {
var that = this;
that.showposter = true;
that.sharetypevisible = false;
app.showLoading('生成海报中');
app.post('ApiShortvideo/getposter', {
id: this.videoDataList[this._videoDataIndex].id
}, function(data) {
app.showLoading(false);
if (data.status == 0) {
app.alert(data.msg);
} else {
that.posterpic = data.poster;
}
});
},
posterDialogClose: function() {
this.showposter = false;
console.log('11')
},
toggleFaceBox: function() {
this.faceshow = !this.faceshow
},
onInputFocus: function(e) {
this.faceshow = false
},
messageChange: function(e) {
this.message = e.detail.value;
this.trimMessage = e.detail.value.trim();
},
transformMsgHtml: function(msgtype, content) {
if (msgtype == 'miniprogrampage') {
var contentdata = JSON.parse(content);
content = '<div style="font-size:16px;font-weight:bold;height:25px;line-height:25px">' +
contentdata.Title + '</div><img src="' + contentdata.ThumbUrl + '" width="200"/>';
}
if (msgtype == 'image') {
content = '<img src="' + content + '" width="200"/>';
}
return content;
},
selectface: function(face) {
this.message = "" + this.message + face;
this.trimMessage = this.message.trim();
},
goback: function() {
getApp().goback();
},
sharemp: function() {
app.error('点击右上角发送给好友或分享到朋友圈');
this.sharetypevisible = false
},
shareapp: function() {
var that = this;
var videoinfo = that.videoDataList[that._videoDataIndex]
uni.showActionSheet({
itemList: ['发送给微信好友', '分享到微信朋友圈'],
success: function(res) {
if (res.tapIndex >= 0) {
var scene = 'WXSceneSession';
if (res.tapIndex == 1) {
scene = 'WXSenceTimeline';
}
var sharedata = {};
sharedata.provider = 'weixin';
sharedata.type = 0;
sharedata.scene = scene;
sharedata.title = videoinfo.name;
sharedata.summary = videoinfo.description;
sharedata.href = app.globalData.pre_url + '/h5/' + app.globalData.aid +
'.html#/activity/shortvideo/detail?scene=id_' + videoinfo.id + '-pid_' +
app.globalData.mid;
sharedata.imageUrl = videoinfo.coverimg;
var sharelist = app.globalData.initdata.sharelist;
if (sharelist) {
for (var i = 0; i < sharelist.length; i++) {
if (sharelist[i]['indexurl'] == '/activity/shortvideo/detail') {
sharedata.title = sharelist[i].title;
sharedata.summary = sharelist[i].desc;
sharedata.imageUrl = sharelist[i].pic;
if (sharelist[i].url) {
var sharelink = sharelist[i].url;
if (sharelink.indexOf('/') === 0) {
sharelink = app.globalData.pre_url + '/h5/' + app
.globalData.aid + '.html#' + sharelink;
}
if (app.globalData.mid > 0) {
sharelink += (sharelink.indexOf('?') === -1 ? '?' : '&') +
'pid=' + app.globalData.mid;
}
sharedata.href = sharelink;
}
}
}
}
uni.share(sharedata);
}
}
});
},
}
}
</script>
<style lang="scss" >
.stop_box2{
z-index:9;
position: fixed;
top: 40%;
opacity: 0.5;
padding: 0 20rpx;
color: #fff;
// background-color: #fff;
left: 0;
right: 0;
font-size: 170rpx;
justify-content: center;
display: flex;
flex-direction: row;
align-items: center;
}
.stop_box{
z-index:9;
position: fixed;
bottom: 310rpx;
opacity: .8;
padding: 0 20rpx;
color: #fff;
// background-color: #fff;
left: 0;
right: 0;
display: flex;
flex-direction: row;
align-items: center;
}
/* #ifndef APP-PLUS */
page {
width: 100%;
height: 100%;
display: flex;
overflow: hidden;
position: relative
}
/* #endif */
.page {
flex: 1;
/* width: 750rpx; */
}
.swiper {
flex: 1;
}
.swiper-item {
flex: 1;
}
.video {
flex: 1;
/* #ifndef APP-PLUS */
width: 100%;
/* #endif */
}
.flex-row {
display: flex;
flex-direction: row
}
.goback {
position: absolute;
z-index: 4;
top: 40px;
left: 15px;
// width: 30px;
height: 30px;
display: flex;
// flex-direction: column;
align-items: center
}
.right-d {
width: 36rpx;
height: 30rpx;
margin: 0;
margin-left: 24rpx;
.d1 {
width: 100%;
height: 2rpx;
background-color: #fff;
}
}
.goback-img {
width: 30px;
height: 30px
}
.playbox {
position: absolute;
width: 750rpx;
height: 100%;
flex: 1;
background: rgba(0, 0, 0, 0.5);
z-index: 3
}
.playbox-img {
position: absolute;
top: 50%;
left: 50%;
width: 60rpx;
height: 60rpx;
margin-left: -30rpx;
margin-top: -30rpx
}
.logo {
position: absolute;
z-index: 4;
top: 260rpx;
right: 18rpx;
width: 90rpx;
height: 90rpx;
z-index: 4;
border-radius: 50%;
overflow: hidden;
border: 4rpx solid #FFFFFF;
background: linear-gradient(180deg, #FF2775 0%, #FF2F4B 100%);
}
.logo-img {
width: 86rpx;
height: 86rpx;
border-radius: 50%;
}
.viewnum {
position: absolute;
z-index: 4;
top: 400rpx;
right: 26rpx;
display: flex;
flex-direction: column;
align-items: center
}
.viewnum-img {
width: 72rpx;
height: 72rpx
}
.viewnum-txt {
font-size: 24rpx;
color: #fff;
text-shadow: 0px 6px 12px rgba(0, 0, 0, 0.12);
}
.likenum {
position: absolute;
z-index: 4;
top: 530rpx;
right: 26rpx;
display: flex;
flex-direction: column;
align-items: center
}
.likenum-img {
width: 72rpx;
height: 72rpx
}
.likenum-txt {
font-size: 24rpx;
color: #fff;
text-shadow: 0px 6px 12px rgba(0, 0, 0, 0.12);
}
.commentnum {
position: absolute;
z-index: 4;
top: 660rpx;
right: 26rpx;
display: flex;
flex-direction: column;
align-items: center
}
.commentnum-img {
width: 72rpx;
height: 72rpx
}
.commentnum-txt {
font-size: 24rpx;
color: #fff;
text-shadow: 0px 6px 12px rgba(0, 0, 0, 0.12);
}
.sharenum {
position: absolute;
z-index: 4;
top: 790rpx;
right: 26rpx;
display: flex;
flex-direction: column;
align-items: center
}
.sharenum-img {
width: 72rpx;
height: 72rpx
}
.sharenum-txt {
font-size: 24rpx;
color: #fff;
text-shadow: 0px 6px 12px rgba(0, 0, 0, 0.12);
}
.linkurl {
position: absolute;
z-index: 4;
bottom: 160rpx;
right: 0;
display: flex;
flex-direction: row;
align-items: center;
background: rgba(100, 100, 100, 0.5);
padding: 10rpx 0 10rpx 20rpx;
border-radius: 30rpx 0 0 30rpx
}
.linkurl-img {
width: 36rpx;
height: 36rpx
}
.linkurl-txt {
font-size: 26rpx;
color: #fff;
}
.bottomshadow {
position: absolute;
z-index: 4;
bottom: 0;
left: 0;
width: 100%;
height: 400rpx;
background: linear-gradient(0deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
border-radius: 10px;
}
.cart {
position: absolute;
z-index: 5;
bottom: 40rpx;
right: 50rpx;
width: 88rpx;
height: 88rpx;
display: relative
}
.cart-img {
width: 88rpx;
height: 88rpx
}
.cart-txt {
position: absolute;
z-index: 5;
bottom: 6rpx;
color: #fff;
width: 88rpx;
text-align: center;
font-size: 28rpx;
font-weight: bold
}
.title {
position: absolute;
z-index: 3;
bottom: 160rpx;
left: 30rpx;
width: 500rpx;
overflow: hidden;
}
.title-txt {
font-size: 36rpx;
color: #fff;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
overflow: hidden;
}
.description {
position: absolute;
z-index: 3;
bottom: 60rpx;
left: 30rpx;
width: 500rpx;
overflow: hidden;
}
.description-txt {
font-size: 28rpx;
height: 88rpx;
line-height: 44rpx;
color: #fff;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}
.probox {
width: 750rpx;
height: 700rpx;
padding: 20rpx 20rpx;
background: #fff;
z-index: 16;
position: relative
}
.probox-replyshadow {
position: absolute;
z-index: 20;
background: rgba(0, 0, 0, 0.4);
width: 750rpx;
flex: 1;
left: 0;
right: 0;
top: 0;
bottom: 0;
}
.probox-close {
position: absolute;
top: 10rpx;
right: 10rpx;
z-index: 7;
width: 50rpx;
height: 50rpx;
padding: 10rpx;
}
.probox_title {
height: 60rpx;
line-height: 60rpx;
margin-bottom: 20rpx;
display: flex;
flex-direction: row
}
.probox_title-t1 {
font-size: 28rpx;
color: #000;
font-weight: bold
}
.probox_title-t2 {
font-size: 28rpx;
color: #000;
font-weight: bold
}
.probox_content {
height: 580rpx;
overflow: scroll;
display: flex;
}
.probox_content-item {
display: flex;
flex-direction: row;
flex: 1;
padding: 20rpx;
position: relative
}
.probox_content-item-img {
width: 188rpx;
height: 188rpx;
border-radius: 10rpx;
flex-shrink: 0
}
.probox_content-item-info {
flex: 1;
display: flex;
flex-direction: column;
padding-left: 20rpx
}
.probox_content-item-name {
color: #212121;
font-size: 28rpx;
height: 80rpx;
line-height: 40rpx;
font-weight: bold;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}
.probox_content-item-sales {
color: #999999;
font-size: 24rpx;
height: 50rpx;
line-height: 50rpx
}
.probox_content-item-price {
color: #EFBD6F;
font-size: 36rpx;
font-weight: bold;
height: 50rpx;
line-height: 50rpx
}
.probox_content-item-btn {
position: absolute;
top: 140rpx;
right: 20rpx;
background: linear-gradient(-90deg, #EFBD6F 0%, rgba(239, 189, 111, 0.76) 100%);
border-radius: 26px;
width: 150rpx;
height: 54rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center
}
.probox_content-item-btn-txt {
color: #FFFFFF;
font-size: 24rpx;
font-weight: bold;
text-align: center
}
.popupshare__content {
position: absolute;
bottom: 0;
left: 0;
right: 0;
z-index: 999;
width: 750rpx;
height: 280rpx;
padding: 20rpx 0;
background: #fff;
display: flex;
}
.popupshare__close2 {
position: absolute;
top: 10rpx;
right: 10rpx;
z-index: 1000;
width: 50rpx;
height: 50rpx;
padding: 10rpx;
}
.sharetypecontent {
flex: 1;
width: 710rpx;
height: 250rpx;
margin: 0 20rpx;
display: flex;
flex-direction: row;
padding: 50rpx;
}
.sharetypecontent-f1 {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
background: #fff;
font-size: 24rpx;
border: 0
}
.sharetypecontent button::after {
border: 0
}
.sharetypecontent-f1-img {
width: 90rpx;
height: 90rpx;
padding: 0;
margin: 0
}
.sharetypecontent-f1-t1 {
font-size: 24rpx;
color: #111111;
height: 60rpx;
line-height: 60rpx
}
.sharetypecontent-f2 {
flex: 1;
display: flex;
flex-direction: column;
align-items: center
}
.sharetypecontent-f2-img {
width: 90rpx;
height: 90rpx;
}
.sharetypecontent-f2-t1 {
font-size: 24rpx;
color: #111111;
height: 60rpx;
line-height: 60rpx
}
.posterDialog {
position: absolute;
z-index: 99;
width: 750rpx;
height: 1200rpx;
top: 100rpx;
left: 0
}
.posterDialog-main {
width: 670rpx;
height: 1100rpx;
margin: 60rpx 40rpx 30rpx 40rpx;
background: #fff;
position: relative;
border-radius: 20rpx;
display: flex
}
.posterDialog-close {
position: absolute;
padding: 20rpx;
top: 0;
right: 0;
z-index: 10;
}
.posterDialog-img {
width: 40rpx;
height: 40rpx;
}
.posterDialog-content {
flex: 1;
padding: 70rpx 20rpx 30rpx 20rpx;
color: #333;
font-size: 30rpx;
text-align: center;
display: flex
}
.posterDialog-content-img {
flex: 1;
}
.prodialog-close {
width: 36rpx;
height: 36rpx;
padding: 10rpx;
position: absolute;
top: 6rpx;
right: 14rpx;
z-index: 9
}
.pinglun {
padding: 10rpx 24rpx 30rpx;
margin: 0 auto;
flex-direction: row;
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: #fff;
z-index: 8;
border-top: 1px solid #f7f7f7;
padding-bottom: calc(20rpx + constant(safe-area-inset-bottom));
padding-bottom: calc(20rpx + env(safe-area-inset-bottom));
&-bd {
flex: 1;
flex-direction: row;
background: #F6F6F6;
border-radius: 34rpx;
padding: 0 26rpx;
margin-right: 24rpx;
}
.icon-qianbi {
font-size: 40rpx;
margin-right: 12rpx;
flex-shrink: 0;
}
&-input {
flex: 1;
font-size: 28rpx;
color: #666666;
line-height: 38rpx;
height: 68rpx;
}
&-buybtn {
background: linear-gradient(to right,#00AE68 0%,#096742 100%);
width: 156rpx;
text-align: center;
height: 68rpx;
line-height: 68rpx;
font-size: 28rpx;
font-weight: bold;
color: #FFFFFF;
border-radius: 34rpx;
}
}
.plbox {
width: 750rpx;
padding: 36rpx 24rpx 110rpx;
background: #fff;
z-index: 20;
position: relative;
padding-bottom: calc(110rpx + constant(safe-area-inset-bottom));
padding-bottom: calc(110rpx + env(safe-area-inset-bottom));
&_title {
font-size: 28rpx;
color: #666666;
line-height: 40rpx;
flex-direction: row;
margin-bottom: 24rpx;
}
&-close {
position: absolute;
top: 24rpx;
right: 24rpx;
z-index: 7;
width: 30rpx;
height: 30rpx;
}
&_content {
flex: 1;
max-height: 60vh;
& ::-webkit-scrollbar {
display: none;
}
&-item {
flex: 1;
margin-bottom: 24rpx;
display: flex;
flex-direction: row;
&-f1 {
width: 68rpx;
height: 68rpx;
margin-right: 22rpx;
&-img {
width: 100%;
height: 100%;
border-radius: 50%;
}
}
&-f2 {
flex: 1;
font-size: 28rpx;
line-height: 40rpx;
&__con {
flex: 1;
margin-right: 20rpx;
}
&-t1 {
color: #999999;
}
&-t2 {
color: #333333;
margin-top: 4rpx;
flex-direction: row;
&.plbox_content-plcontent {
.plbox_content-plcontent-image {
width: 44rpx;
height: 44rpx;
vertical-align: inherit;
}
}
}
&-t3 {
display: flex;
flex-direction: row;
font-size: 24rpx;
color: #999999;
line-height: 34rpx;
margin-top: 20rpx;
&-x2 {
flex: 1;
font-size: 24rpx;
font-weight: bold;
color: #0A5D3B;
line-height: 34rpx;
margin-left: 22rpx;
}
}
}
}
&-relist {
margin-top: 10rpx;
&-item2 {
font-size: 28rpx;
line-height: 40rpx;
&:not(:last-child) {
margin-bottom: 16rpx;
}
}
&-f2 {
color: #333333;
}
.plbox_content-relist-headimg {
width: 48rpx;
flex-shrink: 0;
height: 48rpx;
border-radius: 24rpx;
margin-right: 16rpx
}
.plbox_content-relist-nickname {
color: #999999;
}
}
}
}
.plbox-replyshadow {
position: absolute;
z-index: 7;
background: rgba(0, 0, 0, 0.4);
width: 750rpx;
flex: 1;
left: 0;
right: 0;
top: 0;
bottom: 0;
}
.plbox_content-item-f2-pzan {
display: flex;
flex-direction: row
}
.plbox_content-item-f2-pzan-img {
width: 32rpx;
height: 32rpx;
margin-right: 10rpx
}
.plbox_content-item-f2-pzan-txt {
font-size: 28rpx;
color: #666
}
.plbox_content-relist-headimg {
width: 30rpx;
height: 30rpx;
border-radius: 15rpx;
margin-right: 8rpx
}
.plbox_content-relist-nickname {
color: #333;
font-size: 24rpx
}
.plbox_content-relist-f2 {
margin-top: 10rpx
}
.comment-nodata {
color: #666;
font-size: 26rpx
}
.comment-nomore {
flex: 1;
color: #999;
height: 60rpx;
line-height: 60rpx;
font-size: 26rpx;
text-align: center
}
@supports(bottom: env(safe-area-inset-bottom)) {
.dp-tabbar-bot {
padding-bottom: 0 !important;
}
.dp-tabbar-bar {
padding-bottom: 0 !important;
}
}
.video-info {
position: absolute;
z-index: 4;
bottom: 0;
left: 0;
right: 0;
color: #fff;
&__top{
padding: 88rpx 28rpx 20rpx;
background: linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.3) 100%);
}
&__title {
font-size: 32rpx;
font-weight: bold;
color: #FFFFFF;
line-height: 44rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
&__txt {
margin-top: 8rpx;
font-size: 28rpx;
color: #FFFFFF;
line-height: 40rpx;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
/* autoprefixer: ignore next */
-webkit-box-orient: vertical;
text-align: justify;
white-space: pre-wrap;
word-break: break-all;
}
&__topic {
margin-top: 16rpx;
flex-wrap: wrap;
flex-direction: row;
margin-bottom: -12rpx;
.topic-item {
flex-direction: row;
flex-shrink: 0;
margin: 0 12rpx 12rpx 0;
background: #F6F6F6;
border-radius: 4rpx;
padding: 6rpx;
&__icon {
flex-shrink: 0;
background: radial-gradient(#dcf5eb,#e9fdf6);
border-radius: 50%;
width: 40rpx;
height: 40rpx;
margin-right: 8rpx;
}
&__name {
font-size: 24rpx;
font-weight: bold;
color: #666666;
line-height: 34rpx;
}
}
}
&__bot {
padding: 20rpx;
background-color: #000000;
width: 100% ;
flex-direction: row;
padding-bottom: 48rpx;
}
&__user {
flex-direction: row;
flex: 1;
.user-header {
margin-right: 20rpx;
width: 60rpx;
height: 60rpx;
border-radius: 60rpx;
background: #fff;
flex-shrink: 0;
}
.user-name {
display: block;
max-width: 185rpx;
font-size: 32rpx;
font-weight: bold;
color: #FFFFFF;
line-height: 44rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
&__detail{
flex-shrink: 0;
flex-direction: row;
.product-info {
margin-right: 44rpx;
&__entry {
border-radius: 50%;
background: #e2f7ef;
width: 68rpx;
height: 68rpx;
.iconfont {
color: #0a5d3b;
font-size: 40rpx;
}
}
&__card {
top: -175rpx;
left: calc(50% + 22rpx);
width: 420rpx;
height: 172rpx;
transform: translateX(-50%);
border-radius: 12rpx;
.card-bgimg {
width: 100%;
height: 100%;
}
.card-con {
flex-direction: row;
padding: 12rpx;
}
.card-hd {
height: 134rpx;
width: 134rpx;
margin-right: 20rpx;
flex-shrink: 0;
}
.card-bd {
flex: 1;
font-size: 22rpx;
font-weight: bold;
line-height: 32rpx;
&__name {
width: 220rpx;
font-size: 26rpx;
color: #333333;
line-height: 36rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
&__sales {
color: #999999;
font-weight: normal;
margin-top: 4rpx;
}
&__price {
color: #333333;
margin-top: 12rpx;
font-size: 24rpx;
}
}
.card-close {
width: 16rpx;
height: 16rpx;
top: 12rpx;
right: 12rpx;
}
}
}
.info-item {
margin-left: 34rpx;
.iconfont{
font-size: 40rpx;
}
&__txt{
margin-top: 8rpx;
font-size: 24rpx;
text-align: center;
}
}
}
}
// 提示弹框
.hitn-n {
width: 100%;
height: 100%;
left: 0;
top: 0;
background-color: #7F7F7F;
z-index: 996;
.hint-bx {
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 6;
.hint-img {
width: 600rpx;
}
.content {
width: 100%;
top: 180rpx;
left: 0;
.h-title {
font-size: 36rpx;
}
.text {
margin-top: 40rpx;
color: #666;
}
}
}
}
</style>