h5直播|微直播weLiveShow|视频h5|video直播

html5直播实例|h5微直播项目模板|仿陌陌直播|仿抖音小视频/火山短视频

近两年正是直播井喷时期,被称为直播元年;各个互联网大平台都有布局自己的直播项目,争抢流量红利、不断进行玩法创新。 如:陌陌直播、抖音小视频、火山短视频、腾讯微视等等。
h5直播主要在这三种情况下,pc端、移动端浏览器和微信端,微信端包含微信浏览器和微信小程序。

h5直播既然这么火,自己也忍不住去开发实践了下,使用html5+css3+Zepto+swiper+wcPop等技术混合开发了个h5微直播项目weLiveShow,功能界面有些类似陌陌、火山短视频。

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

图片描述

/* 消息提醒轮询函数----------------------------------------------------*/
// xxx用户来了
function comingUser(){
    var rndObj = [
        { name: '笑笑', level: 'level01', levelNum: 12 },
        { name: '神仙眷侣♉', level: 'level03', levelNum: 16 },
        { name: '大海的声音', level: 'level05', levelNum: 20 },
        { name: '听风者☋', level: 'level02', levelNum: 15 },
        { name: '网瘾少年', level: 'level03', levelNum: 16 },
        { name: '小宝♥', level: 'level05', levelNum: 20 },
        { name: '解脱门♣★', level: 'level01', levelNum: 12 }
    ];
    var len = rndObj.length, num = Math.floor(Math.random() * len);

    wcTips({
        selector: '#J__timelyBox',
        id: 'wcTips1',
        content: '<ul class="clearfix"><li class="tips wls__bg wls__' + rndObj[num].level + '"><div class="inner flexbox"><span class="bg"><i class="iconfont icon-xingxing"></i><b>' + rndObj[num].levelNum + '</b></span>' + rndObj[num].name + ' 来了</div></li></ul>',
        anim: 'fadeInLeftBig',
        time: 5
    });
}
// 送礼物提醒
function giveGift(){
    var rndObj = [
        { avator: 'img/uimg/u__chat-img02.jpg', userName: '笑笑', giftName: '奖杯', giftImg: 'img/gift/gift-img001-奖杯.png' },
        { avator: 'img/uimg/u__chat-img06.jpg', userName: '神仙眷侣♉', giftName: '金话筒', giftImg: 'img/gift/gift-img002-金话筒.png' },
        { avator: 'img/uimg/u__chat-img07.jpg', userName: '大海的声音', giftName: '棒棒糖', giftImg: 'img/gift/gift-img004-棒棒糖.png' },
        { avator: 'img/uimg/u__chat-img12.jpg', userName: '听风者☋', giftName: '幸运草', giftImg: 'img/gift/gift-img005-幸运草.png' },
        { avator: 'img/uimg/u__chat-img13.jpg', userName: '网瘾少年', giftName: '我爱你', giftImg: 'img/gift/gift-img010-我爱你.png' },
        { avator: 'img/uimg/u__chat-img14.jpg', userName: '小宝♥', giftName: '恶作剧便便', giftImg: 'img/gift/gift-img011-恶作剧便便.png' },
        { avator: 'img/uimg/u__chat-img15.jpg', userName: '解脱门♣★', giftName: '一支玻尿酸', giftImg: 'img/gift/gift-img021-一支玻尿酸.png' }
    ];
    var len = rndObj.length, num = Math.floor(Math.random() * len);

    wcTips({
        selector: '#J__timelyBox',
        id: 'wcTips2',
        content: '<ul class="clearfix"><li class="gift"><div class="flexbox flex-alignc"><img class="avator" src="' + rndObj[num].avator + '" /><div class="giftdesc flex1 clamp1"><span class="t1">' + rndObj[num].userName + '</span><em class="t2">送 主播 ' + rndObj[num].giftName + '</em></div><img class="giftimg" src="' + rndObj[num].giftImg + '" /></div></li></ul>',
        anim: 'fadeInBig',
        time: 5
    });
}
// 动画礼物提醒
function giveGifGift(){
    var rndObj = [
        { giftName: '福到了', giftImg: 'img/gift/gif/gift-gifimg001.gif' },
        { giftName: '发红包喽', giftImg: 'img/gift/gif/gift-gifimg002.gif' },
        { giftName: '大白变超人', giftImg: 'img/gift/gif/gift-gifimg003.gif' },
        { giftName: '浪漫的热气球', giftImg: 'img/gift/gif/gift-gifimg004.gif' },
        { giftName: '超炫法拉利', giftImg: 'img/gift/gif/gift-gifimg005.gif' },
        { giftName: '大白鲨', giftImg: 'img/gift/gif/gift-gifimg006.gif' },
        { giftName: '魔法城堡', giftImg: 'img/gift/gif/gift-gifimg007.gif' }
    ];
    var len = rndObj.length, num = Math.floor(Math.random() * len);

    wcTips({
        selector: 'body',
        id: 'wcTips3',
        content: '<div class="wls__gift-fullscreen"><div class="gifGift"><img class="gifimg" src="' + rndObj[num].giftImg + '" /></div></div>',

        shade: true,
        anim: 'zoomInDown',
        time: 10
    });
}
/**
    * @title         及时消息提示插件
    * @Create        andy
    * @Timer        2018/10/16 15:16:45 GMT+0800 (中国标准时间)
*/
!function(win){
    var _doc = win.document, _docEle = _doc.documentElement, index = 0,
    util = {
        $: function(id){
            return _doc.getElementById(id);
        },
        touch: function(o, fn){
            o.addEventListener("click", function(e){
                fn.call(this, e);
            }, !1);
        },
        // object扩展
        extend: function(target, source){
            for(var i in source){
                if(!(i in target)){
                    target[i] = source[i];
                }
            }
            return target;
        },
        timer: {}    //定时器
    },
    wcTips = function(options){
        var _this = this,
            config = {
                selector: 'body',        //提示框被包围dom(默认body)
                id: 'wcTips',              //提示框ID标识(不同的ID对应不同的提示框)
                content: '',              //内容
                
                shade: false,            //是否显示遮罩层
                anim: 'fadeIn',           //具体动画可参考animate.css  [fadeIn - fadeInBig - fadeInUp - fadeInDown - pulse - zoomInDown - zoomInDownSmall]
                time: 3,                  //设置提示框自动关闭秒数1、 2、 3
                zIndex: 9999         //设置元素层叠
            };
        
        _this.opts = util.extend(options, config);
        _this.init();
    };
    
    wcTips.prototype = {
        init: function(){
            var _this = this, opt = _this.opts, tipbox = null;
            
            util.$(opt.id) ? (tipbox = util.$(opt.id)) : (tipbox = _doc.createElement("div"), tipbox.id = opt.id);
            tipbox.setAttribute("index", index);
            tipbox.setAttribute("class", "wcTips wcTips" + index);
            tipbox.setAttribute("selector", opt.selector);

            tipbox.innerHTML = [
                /**遮罩*/
                opt.shade ? ('<div class="wctips-mask" style="z-index:'+(_this.maxIndex()+1)+'"></div>') : '',
                /**窗体*/
                '<div class="wctips-child ' + (opt.anim ? 'anim-' + opt.anim : '') + '" style="z-index:'+(_this.maxIndex()+2)+'">'+ opt.content +'</div>'
            ].join('');
            _doc.querySelector(opt.selector).appendChild(tipbox);

            this.index = index++;
            _this.callback();
        },
        callback: function(){
            var _this = this, opt = _this.opts;
            //自动关闭弹窗
            if(opt.time){
                util.timer[_this.index] = setTimeout(function(){
                    exports.close(_this.index);
                }, opt.time * 1000);
            }
        },
        //获取弹窗最大层级
        maxIndex: function () {
            for (var idx = this.opts.zIndex, elem = _doc.getElementsByTagName("*"), i = 0, len = elem.length; i < len; i++)
                idx = Math.max(idx, elem[i].style.zIndex);
            return idx;
        }
    };
    
    var exports = (function(){
        //实例化插件(返回 弹窗索引值)
        fn = function(args){
            var o = new wcTips(args);
            return o.index;
        };
        
        //关闭窗口
        fn.close = function(index){
            var index = index > 0 ? index : 0;
            // var o = $(".wcTips" + index);
            var o = _doc.getElementsByClassName("wcTips" + index)[0];

            if(o){
                var selector = o.getAttribute("selector");
                // o.addClass("wcTips-close");
                o.classList.add("wcTips-close");
                setTimeout(function(){
                    // o.remove();
                    _doc.querySelector(selector).removeChild(o);
                    clearTimeout(util.timer[index]);
                    delete util.timer[index];
                }, 200);
            }
        }
        
        return fn;
    }());
    
    win.wcTips = exports;
}(window);

图片描述

欢迎大家一起交流、学习 Q:282310962 wx:xy190310

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
解压后,请运行http://www.xxxx.com/install/ 进行安装 Sorry,我知道是要免费提供的,可是我的CSDN老是不够用 此版本能够看到记录,某用户的记录,并删除记录。 一. WeLive介绍: ------------------ WeLive在线客服系统是一个程序小巧, 安装使用简单的网上在线客服系统, 主要特点: 1. 基于PHP + MySQL + Ajax技术的在线客服系统; 2. 用户安装在自己的服务器或虚拟主机, 安装一次可在任意网站或页面中调用; 3. 前台中英文双语, 根据用户浏览器的语言自动切换或由管理员设置指定; 4. 客服人员多窗口与不同的访客同时交流; 5. 客服人员分组管理, 无限制添加客服人员; 6. 新信息窗口闪动, 信息提示声音, 颜色, 表情符号等等。 ============================================================== 二. WeLive安装: ------------------ A. 系统要求: -------------- 1. Unix, Linux或Windows Web服务器, 要求支持Ajax. 2. PHP4.1或以上. 3. MySQL4.0或以上. B. 安装步骤: -------------- 1. 设置FTP上传工具的传送模式为"二进制", 否则上传的PHP程序可能会在运行时发生意想不到的错误. 如设置FlashFXP:选项 -> 参数设置 -> 打开对话框 -> 传送 -> 在传送模式中选择"二进制(图像)" 2. 解压程序包后, 使用FTP工具上传到网站服务器某一指定目录如: welive/ 3. linux或unix服务器需要更改以下文件夹或文件属性为可写: ./welive/cache/ 属性: 777 ./welive/config/ 属性: 777 ./welive/config/settings.php 属性: 777 4. 新建一个MySQL数据库或向虚拟主机服务商索取已存在的MySQL数据库的数据库名, 用户名, 用户密码信息。 5. 在浏览器中输入地址: http://www.xxxx.com/welive/install/, 系统提示安装. 安装完成后建议删除安装目录 ./welive/install/ C. 重新安装: ------------- 1. 重新安装需要删除./welive/config/config.php文件, 上传install文件夹, 然后按第B.5步安装. ============================================================== 三. WeLive使用: ------------------ WeLive系统使用非常简单, 登录闻泰论坛可查阅更多相关使用方面的文章. 1. 调用客服小面板(浮动): ------------------------- a. html文件中调用代码: [removed][removed] 在html文件中的<head></head>或<body></body>之间插入上面一行代码, 网页就能调用客服小面板. 注意: 上面的文件地址为绝对地址, 当然也可以使用相对地址, 但如果您不知道当前html文件和welive.php的相对关系, 那么使用绝对地址将更为简单方便. b. php文件中调用: 在任何php代码段添加下面一句: echo '[removed][removed]'; 或在php文件中的html代码段添加下面一句: [removed][removed] c. 在weenCompany企业网站系统中调用: 如果希望在weenCompany系统的任何页面中都显示客服小面板, 可打开weenCompany的index.php文件: 查找到这一句: [removed][removed]'; 在其后面添加并变为如下(注意语句结尾的标点符号): [removed][removed] [removed][removed]'; 如果希望仅在weenCompany系统的某个模板样式中显示客服小面板, 可打开这个模板样式文件: 在此样式文件的</head>之前添加下面一句: [removed][removed] d. 在其它编程语言(如ASP)编写的网页文件中均调用显示客服小面板, 参考以上说明或访问闻泰论坛提问. 2. 直接在页面中插入客服图片(固定): ------------------------------------ 在需要显示WeLive在线客服系统“客服图片”的页面<body></body>之间任意您需要的地方, 插入以下代码: [removed][removed] 注:a. 四个客服在线状态图片存放在images目录, 可以随意更换, 但不要改名; b. 客服在线状态图片无法显示QQ, MSN, Skype的在线状态; 3. 管理员及客服人员登录: ----------------------------- a. 管理员及客服人员的操作面板登录地址为: http://www.xxxx.com/welive/ b. 建议修改客服人员的登录名和密码: 系统默认安装后, 系统自带客服人员的登录密码都与管理员密码相同, 请自行修改, 删除或添加. c. 只有管服人员登录后,系统才可以提供在线服务.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值