$(function () { // 导航 new Swiper('.vnav-box', { autoplay: false,//可选选项,自动滑动 slidesPerView: 'auto', spaceBetween: 10, }) /* * 区域选择功能特效 */ var wdata = new Object(); wdata.cityID = 0; //用于存放市县 //创建MeScroll对象,内部已默认开启下拉刷新,自动执行up.callback,刷新列表数据; var mescroll = new MeScroll("mescroll", { up: { callback: getListData, //上拉回调,此处可简写; 相当于 callback: function (page, mescroll) { getListData(page); } isBounce: false, //此处禁止ios回弹,解析(务必认真阅读,特别是最后一点): http://www.mescroll.com/qa.html#q10 clearEmptyId: "dataList", //相当于同时设置了clearId和empty.warpId; 简化写法;默认null; 注意vue中不能配置此项 toTop: { //配置回到顶部按钮 src: "/js/videolist/dist/res/mescroll-totop.png", //默认滚动到1000px显示,可配置offset修改 offset: 100 }, lazyLoad: { use: true // 是否开启懒加载,默认false } } }); // 市县选择 $('.video-nav').on('click', 'a', function () { var $that = $(this); wdata.cityID = $that.attr('data-cid'); $that.addClass('on').siblings().removeClass('on'); //重置列表数据 mescroll.resetUpScroll(); //隐藏回到顶部按钮 mescroll.hideTopBtn(); }) $('.video-nav a').eq(0).click(); /*联网加载列表数据 page = {num:1, size:10}; num:当前页 从1开始, size:每页数据条数 */ function getListData(page) { //联网加载数据 // getListDataFromNet(pdType, page.num, page.size, function(curPageData){ getListDataFromNet(wdata.cityID, page.num, page.size, function (curPageData) { //方法二(推荐): 后台接口有返回列表的总数据量 totalSize //必传参数(当前页的数据个数, 总数据量) mescroll.endBySize(curPageData.length, totalSize); //设置列表数据 setListData(curPageData, page.num); }, function () { //联网失败的回调,隐藏下拉刷新和上拉加载的状态; mescroll.endErr(); }); } /*设置列表数据*/ function setListData(curPageData, page) { var listDom = document.getElementById("dataList"); for (var i = 0; i < curPageData.length; i++) { var pd = curPageData[i]; var str = ''; str += '
'; str += ''; str += '
'; str += '
'; str += '

' + pd.name.substring(0, 18) + '

'; str += '

'; // str +=''+(pd.plays*1 + 1000)+'播放'; // str +=''; // 这里需要判断 type 值 添加 oin str += '

'; str += '
'; str += '
'; var liDom = document.createElement("li"); liDom.innerHTML = str; listDom.appendChild(liDom); } } /*联网加载列表数据 在您的实际项目中,请参考官方写法: http://www.mescroll.com/api.html#tagUpCallback 请忽略getListDataFromNet的逻辑,这里仅仅是在本地模拟分页数据,本地演示用 实际项目以您服务器接口返回的数据为准,无需本地处理分页. * */ function getListDataFromNet(cityId, pageNum, pageSize, successCallback, errorCallback) { //延时一秒,模拟联网 setTimeout(function () { $.ajax({ type: 'get', url: '/video/getvideo', // url: '../res/pdlist1.json?pdType='+pdType+'&num='+pageNum+'&size='+pageSize, data: {city: wdata.cityID, page: pageNum, limit: pageSize}, dataType: 'json', success: function (data) { var listData = []; totalSize = data.count; //总条数 $.each(data.data, function (k, v) { listData.push(v); }) //回调 successCallback(listData); }, error: errorCallback }); }, 1000) } // // 点赞特效 提交 id 及 1 代表点赞,2 代表取消 // var objo = new Object(); // $('#dataList').on('click','.like',function(){ // var that = $(this); // if(that.hasClass('oin')){ // that.removeClass('oin') // }else { // that.addClass('oin'); // } // objo.id = that.attr('data-id') // objo.type = that.attr('data-type') // cityAjax(); // 提交点赞数据 // }) // // 提交点赞数据 // function cityAjax(){ // $.ajax({ // url:'/js/videolist/index.json', // dataType:"json", // type:'POST', // data:{id:objo.id,type:objo.type}, // success:function(data){ // if(data.code == 200){ // console.log("提交成功!") // } // } // }); // } // 视频搜索功能 $('.seek-btn').on('click', function () { var txt = $('.seek-txt').val(); var li = ''; $.ajax({ type: 'post', url: '/video/search', data: {text: txt}, dataType: 'json', success: function (data) { $.each(data.data, function (k, v) { li += '
  • '; li += ''; li += '
    '; li += ''; li += '
    '; li += '
    '; li += '

    ' + v.name.substring(0, 18) + '

    '; li += '

    '; // li += '' + (v.plays * 1 + 1000) + '播放'; // li += ''; // 这里需要判断 type 值 添加 oin li += '

    '; li += '
    '; li += '
    '; li += '
  • '; }) $('#dataList').html(''); $('#dataList').append(li); } }); }) })