动漫网站源码设计与实现

已完成编写的Sky动漫网主页如下

PC电脑端效果截图:

APP手机端效果截图:

      

 

数据库相关表设计如下:

主要有:动漫主体信息表、视频播放源表、文章资讯表、主题专辑表、经典语录表、图片图集表、评论表等等

信息采集使用jsoup爬取

各大视频网站(优酷、爱奇艺、搜狐、腾讯、哔哩哔哩、乐视、新浪、土豆、芒果、PPTV等等)共享的内嵌播放器源码整理如下:

function openurl(){
    var sourceurl = $("#sourceurl").val();
    window.open(sourceurl);
}
function checkplayer(obj){
    var sourceurl = $("#sourceurl").val();
    var vid = $("#vid").val();
    var tvid = $("#tvid").val();
    var sourceplatform = $("#sourceplatform").val();
    var sourceurl2 = sourceurl;
    var page = "1";
    if(sourceplatform=='爱奇艺'){
        if(vid!=''&&vid!=null){
            if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)){
                document.getElementById('player').innerHTML = ('<iframe id="playiframe" allowfullscreen frameborder="0" src="http://m.iqiyi.com/shareplay.html?vid='+vid+'&tvId='+tvid+'"></iframe>');
                //<iframe src="http://open.iqiyi.com/developer/player_js/coopPlayerIndex.html?vid=b3ee0c25176f5ef58ae7901ca34418fd&tvId=1504532800&accessToken=2.f22860a2479ad60d8da7697274de9346&appKey=3955c3425820435e86d0f4cdfe56f5e7&appId=1368&height=100%&width=100%" frameborder="0" allowfullscreen="true" width="100%" height="100%"></iframe>
            } else {
                document.getElementById('player').innerHTML = '<embed id="playiframe" align="middle" id="flash" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://dispatcher.video.qiyi.com/disp/shareplayer.swf" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="vid='+vid+'&tvId='+tvid+'&coop=coop_58dm&cid=qc_100001_300144&autoPlay=1&showSearchBox=0&showSearch=0&showRank=0&showShare=0&showDock=0&showComment=0&showRecommend=0&showFocus=0&showNext=0&enableAd=0&showDefinition=0&isPlayNext=0" bgcolor="#000000" menu="true" allowfullscreen="true" devicefont="false" scale="showall" quality="hight" play="true" loop="true"/>';
                //document.getElementById('player').innerHTML = ('<embed src="http://player.video.iqiyi.com/'+vid+'/0/0/v_19rr2qbh9o.swf-albumId=1504532800-tvId='+tvid+'-isPurchase=0-cnId=undefined" allowFullScreen="true" quality="high" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>');
            }
        }else{
            document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.bbbbbb.me/jx/?url='+sourceurl+'"></iframe>');
        }
        
    }else if(sourceplatform=='优酷'){
        sourceurl2=sourceurl2.substring(sourceurl2.indexOf("id_")+3,sourceurl2.indexOf(".html"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        {
        document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://player.youku.com/embed/'+sourceurl2+'" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
        }else{
            //document.getElementById('player').innerHTML  = ('<embed id="playiframe" align="middle" id="flash" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://static.youku.com/v1.0.0242/v/swf/player.swf" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="MMControl=false&MMout=false&isShowRelatedVideo=false&showAd=0&show_pre=0&show_next=0&isAutoPlay=true&show_ce=0&playMovie=true&winType=interior&VideoIDS='+sourceurl2+'" bgcolor="#000000" menu="true" allowfullscreen="true" devicefont="false" scale="showall" quality="hight" play="true" loop="true"/>');
            //document.getElementById('player').innerHTML  = '<div class="tz_center"><a class="tz_button" href="http://v.youku.com/v_show/id_XMzA1NzA2MTYwOA.html" target="_blank" onFocus="this.blur()">点击进入播放</a></div>';
            document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://player.youku.com/embed/'+sourceurl2+'" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
        }
    }else if(sourceplatform=='搜狐'){
        if(vid!=''&&vid!=null){
            if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
            {
            document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://tv.sohu.com/upload/static/share/share_play.html#'+vid+'_'+tvid+'_0_16_1" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
            }else{
            document.getElementById('player').innerHTML  = '<iframe id="playiframe" src="http://tv.sohu.com/upload/static/share/share_play.html#'+vid+'_'+tvid+'_0_16_1" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>';
            }
        }else{
            document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.bbbbbb.me/jx/?url='+sourceurl+'"></iframe>');
        }
        
    }else if(sourceplatform=='哔哩哔哩'){
        if(sourceurl2.indexOf(".html")!=-1){
            page = sourceurl2.substring(sourceurl2.lastIndexOf("/index_")+7,sourceurl2.indexOf(".html"));
        }
        sourceurl2=sourceurl2.substring(sourceurl2.indexOf("av")+2,sourceurl2.lastIndexOf("/"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        {
        document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.baiyug.cn/vip/index.php?url='+sourceurl+'"></iframe>');
        }else{
            document.getElementById('player').innerHTML  = ('<embed id="playiframe" src="http://static.hdslb.com/miniloader.swf?aid='+sourceurl2+'&page='+page+'" type="audio/mpeg" loop="-1" autostart="false" volume="0" style=""></embed>');
        }
        //<embed height="415" width="544" quality="high" allowfullscreen="true" type="application/x-shockwave-flash" src="//static.hdslb.com/miniloader.swf" 
        //flashvars="aid=15280493&page=1" pluginspage="//www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash"></embed>
        //static.hdslb.com/miniloader.swf?aid=15280493&page=1
        //https://www.bilibili.com/video/av15280493/
        
//        if (navigator.userAgent.match(/(Android)/i)) 
//        {
//        document.getElementById('player').innerHTML  = ('<iframe width="100%" height="100%" src="https://api.vparse.org/?url=http://bangumi.bilibili.com/anime/'+u1+'/play#'+u2+'" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
//        }else if(navigator.userAgent.match(/(iPhone|iPod|ios|iPad)/i)) 
//        {document.getElementById('player').innerHTML  = ('<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="http://www.bilibili.com/html/html5player.html?cid='+u3+'" marginheight="0" marginwidth="0"></iframe>');
//        }else{
//        document.getElementById('player').innerHTML  = '<a href="http://bangumi.bilibili.com/anime/'+u1+'/play#'+u2+'" target="_blank" onFocus="this.blur()"><img id="player" src="img/lazyload.gif" class="image"></a><br><span style="font-size:12px;color:#888;margin-right:-8px;">点击进入</span>';
//        }
//        if (navigator.userAgent.match(/(iPhone|iPod|ios|iPad)/i)){ 
//            if(u3==null){
//        document.getElementById('player').innerHTML  = ('<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="http://www.bilibili.com/html/html5player.html?cid='+u1+'" marginheight="0" marginwidth="0"></iframe>');
//            }
//            else{
//        document.getElementById('player').innerHTML  = ('<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="http://www.bilibili.com/html/html5player.html?cid='+u1+'" marginheight="0" marginwidth="0"></iframe>');
//            }
//        }    
//        else if (navigator.userAgent.match(/(Android)/i)) 
//        {
//        document.getElementById('player').innerHTML  = '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="http://www.bilibili.com/html/html5player.html?cid='+u1+'" marginheight="0" marginwidth="0"></iframe>';
//        }
//        else 
//        {
//        document.getElementById('player').innerHTML  = '<iframe width="100%" scrolling="no" height="100%" frameborder="0" src="http://www.bilibili.com/html/html5player.html?cid='+u1+'" marginheight="0" marginwidth="0"></iframe>';
//        }
//        document.getElementById('player').innerHTML  = ('<embed src="http://static.hdslb.com/miniloader.swf?aid=15247398&page=1" width=400 height=300 type="audio/mpeg" loop="-1" autostart="false" volume="0" style=""></embed>');
    }else if(sourceplatform=='PPTV'){
        sourceurl2=sourceurl2.substring(sourceurl2.lastIndexOf("/")+1,sourceurl2.indexOf(".html"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        { 
            if(vid!=''&&vid!=null){
                document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://player.pptv.com/iframe/index.html#id='+vid+'&ctx=o%3Dv_share" allowtransparency="true" scrolling="no" frameborder="0" ></iframe>');
            }else{
                document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.bbbbbb.me/jx/?url='+sourceurl+'"></iframe>');
            }
        }else{
        document.getElementById('player').innerHTML  = '<embed id="playiframe" src="http://player.pptv.com/v/'+sourceurl2+'.swf" quality="high" bgcolor="#000" align="middle" allowScriptAccess="always" allownetworking="all" allowfullscreen="true" type="application/x-shockwave-flash" wmode="direct" />';
        }
    }else if(sourceplatform=='腾讯'){
        sourceurl2=sourceurl2.substring(sourceurl2.lastIndexOf("/")+1,sourceurl2.indexOf(".html"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        {
        document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://v.qq.com/iframe/player.html?vid='+sourceurl2+'&tiny=0&auto=0" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
        }else{
        document.getElementById('player').innerHTML  = '<embed id="playiframe" src="https://imgcache.qq.com/tencentvideo_v1/playerv3/TPout.swf?max_age=86400&v=20161117&vid='+sourceurl2+'&auto=0" allowFullScreen="true" quality="high" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>';
        }
    }
    else if(sourceplatform=='芒果'){
        sourceurl2=sourceurl2.substring(sourceurl2.lastIndexOf("/")+1,sourceurl2.indexOf(".html"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        {
        document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.bbbbbb.me/jx/?url='+sourceurl+'"></iframe>');
        }else{
        document.getElementById('player').innerHTML  = '<embed id="playiframe" src="http://player.hunantv.com/mgtv_v5_main/main.swf?play_type=1&video_id='+sourceurl2+'" allowFullScreen="true" quality="high" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>';
        }
    }else if(sourceplatform=='土豆'){
        //sourceurl2=sourceurl2.substring(sourceurl2.lastIndexOf("/")+1,sourceurl2.indexOf(".html"));
        //if (navigator.userAgent.match(/(iPhone|Android|ios)/i)) 
        //{
        //document.getElementById('player').innerHTML  = ('<iframe marginheight="0" marginwidth="0" src="http://www.tudou.com/programs/view/html5embed.action?code='+sourceurl2+'" frameborder="0" width="360"  height="100%" scrolling="no"></iframe>');
        //}else{
        //document.getElementById('player').innerHTML  = '<embed id="playiframe" width="100%" height="100%" align="middle" id="flash" pluginspage="http://www.macromedia.com/go/getflashplayer" src="http://www.tudou.com/v/'+sourceurl2+'/dW5pb25faWQ9MTAyNzQ4XzEwMDAwMV8wMV8wMQ/&videoClickNavigate=false/v.swf" type="application/x-shockwave-flash" allowscriptaccess="always" flashvars="autoPlay=true" bgcolor="#000000" menu="true" allowfullscreen="true" devicefont="false" scale="showall" quality="hight" play="true" loop="true"/>';
        //}
        document.getElementById('player').innerHTML = ('<iframe id="playiframe" src="http://api.bbbbbb.me/jx/?url='+sourceurl+'"></iframe>');
    //}else if(sourceplatform=='新浪'){
//        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
//        {
//        document.getElementById('player').innerHTML  = ('<iframe width="100%" height="100%" src="https://cosmsia.duapp.com/Sina/index.php?vid='+parent.now+'_sina" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
//        }else{
//        document.writeln(str);
//        document.getElementById('player').innerHTML  = '<video id="player" controls="controls" autoplay="autoplay" height="100%" width="100%" οnerrοr="playerror()" οnended="playend()"><source src="http://yunflv404.duapp.com/404/404.mp4" type="video/mp4" ></source></ video>';
//        }
    }else if(sourceplatform=='乐视'){
        sourceurl2=sourceurl2.substring(sourceurl2.lastIndexOf("/")+1,sourceurl2.indexOf(".html"));
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)) 
        {
        document.getElementById('player').innerHTML  = ('<iframe id="playiframe" src="http://minisite.letv.com/tuiguang/index.shtml?vid='+sourceurl2+'&flashvars=autoPlay=1&bd=1" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>');
        }else{
        document.getElementById('player').innerHTML  = '<iframe id="playiframe" src="http://player.hz.letv.com/hzplayer.swf/typeFrom=dm456/v_list=35?vid='+sourceurl2+'" frameborder=0 border=0 marginwidth=0 marginheight=0 scrolling=no></iframe>';
        }
    }else{
        //document.getElementById('player').innerHTML = ('<div class="w-30" style="position: absolute;top: 40%;left: 35%;"><input type="button" value="点击播放"  class="btn btn-success btn-block" οnclick="openurl();"/></div>');
    }
    $(".sourceli").removeClass('active');
    $(obj).parent("li").addClass('active');
    divResize();
}
checkplayer(this);

java部分相关代码如下:

try {
                                                 if (bfpt.equals("爱奇艺")) {
                                                     docbftp=Jsoup.connect(string3).userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31").timeout(5000).get();
                                                     String docString=docbftp.html();
                                                     Elements elements = docbftp.select("div#flashbox");
                                                        if (elements.size()==0) {
                                                            elements = docbftp.select("div.cms-qipuId");//$(".cms-qipuId").attr("data-qipuId");
                                                            for(Element elementq : elements){
                                                                aqy=elementq.attr("data-qipuId");
                                                            }
                                                            docbftp=Jsoup.connect("http://www.iqiyi.com/v_" + aqy + ".html").userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31").timeout(5000).get();
                                                            elements = docbftp.select("div#flashbox");
                                                            for(Element elementq : elements){
                                                                vid=elementq.attr("data-player-videoid");
                                                                tvid=elementq.attr("data-player-tvid");
                                                            }
                                                        }else {
                                                            for(Element elementq : elements){
                                                                vid=elementq.attr("data-player-videoid");
                                                                tvid=elementq.attr("data-player-tvid");
                                                            }
                                                    }
                                                        if (vid.equals("")||StringUtils.isBlank(tvid)) {
                                                            
                                                                Pattern pvid = Pattern.compile("\"vid\":\".*\",\"cid\"");
                                                                Pattern ptvid = Pattern.compile(",\"tvId\":.*,\"vid\":\"");
                                                                Matcher mvid = pvid.matcher(docString);
                                                                Matcher mtvid = ptvid.matcher(docString);
                                                                   while (mvid.find()) {
                                                                       vid=mvid.group().replaceAll("\"vid\":\"", "").replaceAll("\",\"cid\"", "");
                                                                   }
                                                                   while (mtvid.find()) {
                                                                       tvid=mtvid.group().replaceAll(",\"tvId\":", "").replaceAll(",\"vid\":\"", "");
                                                                   }
                                                        }
                                                }else if (bfpt.equals("搜狐")) {
                                                     docbftp=Jsoup.connect(string3).userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31").timeout(5000).get();
                                                     hString=docbftp.html();
                                                     tvid=hString.substring(hString.indexOf("var playlistId=")+16, hString.indexOf("var o_playlistId=")-5);
                                                     vid=hString.substring(hString.indexOf("var vid=")+9, hString.indexOf("var nid = ")-5);
                                                }else if (bfpt.equals("PPTV")) {
                                                     docbftp=Jsoup.connect(string3).userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31").timeout(5000).get();
                                                     Elements elementbfs = docbftp.select("input#share-input3");
                                                        for(Element elementbfpt : elementbfs){
                                                            flashvars=elementbfpt.attr("value");
                                                            vid=flashvars.substring(flashvars.indexOf("#id=")+4, flashvars.indexOf("&ctx="));
                                                        }
                                                }else {
                                                }
                                            } catch (Exception e) {
                                                vid="";
                                                tvid="";
                                            }
                                            string3 = string3.replaceAll("'", "");
                                            sql3="insert into tb_video_source values ("+bf+",'"+tbVideo.getId()+"','"+StrUtils.getNow()+"','1','"+string3+"','"+bfpt+"','"+bfsort+"','"+copyjishu+"','"+vid+"','"+tvid+"');\r\n";

log_maxid++;
        logsource="更新数据-更新动漫视频信息成功。共更新"+logvideo_cnt+"个动漫视频信息";
        logsource=logsource.replaceAll("'", "");
        Db.update("insert into data_log values ("+log_maxid+",'tb_video','更新数据','"+logsource+"','"+StrUtils.getNow()+"','1');\r\n");
        log_maxid++;
        logsource="更新数据-插入播放源成功。共新增"+logsource_cnt+"个播放源";
        logsource=logsource.replaceAll("'", "");
        Db.update("insert into data_log values ("+log_maxid+",'tb_video_source','更新数据','"+logsource+"','"+StrUtils.getNow()+"','1');\r\n");
        connection.commit();

主要html相关代码如下:

<% var headContent = { include("/template/dm/includes/header.html"){} %>
<% }; var bodyContent = { include("/template/dm/includes/header_menu2.html"){} %>
<div id="mainContent" class="container">
    <div class="h6_style" style="padding: 0;">
        <ol class="breadcrumb pl-0" style="margin: 0px;">
            <li><a href="${BASE_PATH }home.html">首页</a></li>
            <li class=""><a href="${BASE_PATH }front/video/${item.id}.html">动漫详情</a></li>
            <li class="active">${item.name }</li>
        </ol>
    </div>
    <div class="col-xs-4 col-md-2 pt-10 row">
        <figure class="mb-10 playd panel">
            <% if(!strutil.isEmpty(item.thumbnail)){ %>
            <img src="${BASE_PATH }file_manage/dm/video_image/${item.thumbnail}"
                alt=""> <% } else { %>
            <img src="${BASE_PATH }static/images/video/no_image.jpg" alt="">
            <% } %>
            <span class="pRightBottom">${item.status==1?item.jishu+'集全':'更新至'+item.gxjishu+'集共'+item.jishu+'集'}</em></span>
            <span class="plays"></span>
        </figure>
        <p class="font-14 h-25">${item.name}</p>
    </div>
    <div class="col-xs-8 col-md-10 pt-10">
        <div class="col-xs-12 col-sm-12 col-md-12 padding_0 mb-5 h-20">
            <span>类型:</span> <span>${item.types}</span>
        </div>
        <div class="col-xs-6 col-sm-12 col-md-12 padding_0 mb-5">
            <span>年份:</span> <span>${item.year}</span>
        </div>
        <div class="col-xs-6 col-sm-12 col-md-12 padding_0 mb-5 h-20">
            <span>地区:</span> <span>${javaweb.showVideoArea(item.area)}</span>
        </div>
        <div class="col-xs-6 col-sm-12 col-md-12 padding_0 m_none mb-5">
            <span>版本:</span> <span>${javaweb.showVideoVersions(item.versions)}</span>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12 padding_0 mb-5 h-20">
            <span>导演:</span> <span>${item.daoyan}</span>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12 padding_0 mb-5 h-20">
            <span>演员:</span> <span>${item.yanyuan}</span>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12 padding_0 mb-5">
            <div class="panel panel-default">
                <div class="">
                    <span id="remarkto">简介:${strutil.length(item.remark) >
                        (session.javaweb_is_moile?37:37)?strutil.subStringTo(item.remark,
                        0, (session.javaweb_is_moile?37:37)):item.remark}</span> <span> <a
                        data-toggle="collapse" data-parent="#accordion"
                        id="collapseThreeA" href="#collapseThree" class="color-green">
                            展开<i class="fa fa-caret-down" aria-hidden="true"></i>
                    </a>
                    </span>
                </div>
                <div id="collapseThree" class="panel-collapse collapse">
                    <span class="">简介:${item.remark} <br />
                        ${item.name}在线播放高清视频资源由sky动漫岛[www.51skydao.com]收集整理,是${item.year}年${javaweb.showVideoArea(item.area)}${javaweb.toReplaceAll(item.types,"/","、")}类的${javaweb.showVideoVersions(item.versions)}动漫,是一部不错的作品哦!
                    </span>
                </div>
            </div>
        </div>
    </div>
    <div class="tabs tabs-v1 col-xs-12 row">
        <!-- Nav tabs -->
        <ul class="nav nav-tabs" role="tablist">
            <% for (item2 in listsou){ if(item2LP.index==1){ %>
            <li id="tabs_${item2LP.index}" role="presentation"
                class="${item2LP.index==1?'active':''}"><a
                href="#role_${item2LP.index}" load="${item2LP.index==1?'1':'0'}"
                index="${item2LP.index}" οnclick="loadsource(this);"
                aria-controls="${item2}" role="tab" data-toggle="tab"
                aria-expanded="false">${item2}</a></li> <%if(listsou.~size>1){%>
            <li class="dropdown"><a href="#" id="myTabDrop1"
                class="dropdown-toggle" data-toggle="dropdown">更多播放源 <b
                    class="caret"></b>
            </a>
                <ul class="dropdown-menu" role="menu" aria-labelledby="myTabDrop1">
                    <% }}else{%>
                    <li id="tabs_${item2LP.index}" role="presentation"><a
                        href="#role_${item2LP.index}" load="0" index="${item2LP.index}"
                        οnclick="loadsource(this);" aria-controls="${item2}" role="tab"
                        data-toggle="tab" aria-expanded="false">${item2}</a></li> <%} }%>
                    <%if(listsou.~size>1){%>
                </ul></li><%}%>
        </ul>
        <!-- Tab panes -->
        <div class="tab-content">
            <% for (item3 in listsou){ %>
            <div role="tabpanel"
                class="${item3LP.index==1?'tab-pane ptb-10 fade in active':'tab-pane ptb-10 fade'}"
                id="role_${item3LP.index}">
                <div class="tags" id="tags_role_${item3LP.index}">
                    <% if(item3LP.index==1){ if(videosources.~size > 0) {
                    if(videosources.~size > 100){ %>
                    <div class="tabs tabs-v1">
                        <!-- Nav tabs -->
                        <ul class="nav nav-tabs panel" role="tablist">
                            <% var total = videosources.~size/100; for(var i = 0;i < total ;
                            i++ ) { %>
                            <li id="tabs_source_${i}" role="presentation"
                                class="${i==0?'active':''}"><a href="#role_source_${i}"
                                aria-controls="1" role="tab" data-toggle="tab"
                                aria-expanded="false">${i*100+1}-${(i+1)*100}集</a></li> <% } %>
                        </ul>
                        <div class="tab-content">
                            <% var j=0; for(item4 in videosources) {
                            if(item4LP.index==j*100+1){ %>
                            <div role="tabpanel"
                                class="${j==0?'tab-pane ptb-20 active':'tab-pane ptb-20'}"
                                id="role_source_${j}">
                                <%}%> <%if(item4LP.index<=((j+1)*100)){ %> <a
                                    href="${item4.sourceurl=='javascript:void(0);'?'javascript:void(0);':BASE_PATH+'front/video/playvideo.html?sid='+item4.id+'&vid='+item.id+''}"
                                    class="${item4.sourceurl=='javascript:void(0);'?'badge badge2 noLink':'badge badge2'}">第${item4.sort}集</a>
                                <%}%> <%if(item4LP.index==((j+1)*100)){ j=j+1; %>
                            </div>
                            <%} %> <%}%></div>
                        </div>
                    </div>
                    <%}else{ for(item5 in videosources) {%> <a
                        href="${item5.sourceurl=='javascript:void(0);'?'javascript:void(0);':BASE_PATH+'front/video/playvideo.html?sid='+item5.id+'&vid='+item.id+''}"
                        class="${item5.sourceurl=='javascript:void(0);'?'badge badge2 noLink':'badge badge2'}">第${item5.sort}集</a>
                    <%} } } } %>
                </div>
            </div>
            <%} %>
        </div>
    <div id="playdiv" class="pull-left row-rl-10">
        <h4 class="h-title mb-20 ml-7">更多推荐</h4>
        <% for(item in videos){ %>
        <div class="col-md-2 col-xs-4 pb-5 padding0 lazyimg mimg">
            <figure class="mb-10 playd panel">
                <% if(!strutil.isEmpty(item.thumbnail)){ %>
                <img
                    data-original="${BASE_PATH }file_manage/dm/video_image/${item.thumbnail}"
                    alt="${item.name}"> <% } else { %>
                <img data-original="${BASE_PATH }static/images/video/no_image.jpg"
                    alt="${item.name}"> <% } %>
                <span class="pRightBottom">${item.status==1?item.jishu+'集全':'更新至'+item.gxjishu+'集'}</em></span>
                <a href="${BASE_PATH }front/video/${item.id}.html" target="_blank"
                    title="${item.name}"><span class="plays5"></span></a>
            </figure>
            <p class="font-14 h-25">
                <a href="${BASE_PATH }front/video/${item.id}.html" target="_blank"
                    title="${item.name}">${item.name}</a>
            </p>
        </div>
        <% } %>
    </div>
</div>
</div>
<% include("/template/dm/includes/footer.html"){} %>
<div id="backTop" class="back-top is-hidden-sm-down">
    <i class="fa fa-angle-up" aria-hidden="true"></i>
</div>
<script type="text/javascript">
    $(function() {
        $('#collapseThree')
                .on(
                        'show.bs.collapse',
                        function() {
                            $('#remarkto').hide();
                            $('#collapseThreeA')
                                    .html(
                                            "收起<i class='fa fa-caret-up' aria-hidden='true'></i>");
                        })

        $('#collapseThree')
                .on(
                        'hide.bs.collapse',
                        function() {
                            $('#collapseThreeA')
                                    .html(
                                            "展开<i class='fa fa-caret-down' aria-hidden='true'></i>");
                            $('#remarkto').show();
                        })

    });
</script>
<%}; layout("/pages/template/_layout.html",{head:headContent,body:bodyContent}){} %>
测试地址:http://www.51skydao.com
--------------------- 
作者:zz_cl 
来源:CSDN 
原文:https://blog.csdn.net/zz_cl/article/details/88365791 
版权声明:本文为博主原创文章,转载请附上博文链接!

登录后台:/admin 管理员及密码都为:admin 2008.8.15 1.修正采集数据时图片出错 2.修改相关动漫的图片 3.修下相关链接的错误 4.增加生成SiteMap地图功能 2008.7.23 1.修正后台不能删除文件错误 2.修改动态播放页错位 3.修下相关链接的错误 2008.7.22 1.增加集数链接标签:{videourlnum} 2.增加当前播放集数标签:{maxz_nv} 3.增加总集数(自动获取最多集数的地址库):{maxz_num} 4.增加相关影片集{maxz_related} 5.增加下载模块 6.增加上下集数标签,让用户播放更方便 7.增加顶踩模块,用户体验 8.优化生成HTML的速度 9.增加专题模块(暂没开放) 10.增加无限重分类(暂没开放) 2008.7.3 1.增加三重分类 2.增加可以生成全部集码生成播放HTML页面 3.增加可显示更新到第几集,两组地址库自动显示最新集数 幻影动漫网视频系统CMS1.0正式版标签及安装使用说明文档 核心是马克斯CMS1.0正式稳定版所有兼容原Max原所有的标签的使用 幻影动漫网视频系统主要更新功能如下: 1、增加影片数量统计函数。 2、改进侧边栏及首页列表第一数据是否显示图片的函数。 3、加入AJAX留言插件。 4、加入AJAX评论插件,后台可设置是否开启,后台可分别按IP,留言者,影片名显示留言,并可以批量删除,留言和评论插件后台均有相关参数设置。 5、改进点播列表集数过多则自动限制在一定范围。 6、增加数据批量替换功能。 7、增加分类合并功能。 8、后台增加HTML状态判断,没有生成的自动选中,可直接批量生成。 9、后台增加人气显示,可以分别按人气,ID,时间排序,并显示当前影片评论数量,多来源数据将显示多个来源。 10、增加DZ编辑器,添加影片介绍更得心应手。 11、改进播放器选项为下拉式,并标有详细来源提示,更贴近新手。 12、改进后台登录模块,防止他人用COOKIES欺骗登录后台,为了绝对安全,建议还是改名。 13、重新增加播放前广告。 14、广告管理增加JS转换工具,凡是JS被编辑时下面均显示转换工具。 15、增加后台添加数据时重复数据检测。 16、不选播放器可以直接添加跳转地址,例如填KU6的。 幻影动漫网视频系统CMS1.0-1.1正式版标签及安装使用说明文档 1.分类列表标签 {maxz_loop:itemloopvTypeid} 自由排版区 {/maxz_loop} 参数 vTypeid:为数字类型,值为0时显示所有一级分类,其它值为指定某个一级分类的ID 自由排版区可用的变量 {zt_typename}一级分类名称 {zt_typeid}一级分类ID {zt_en}一级分类英文名称 {zt_typename_2}二级分类名称 {zt_typeid_2}二级分类ID {zt_en_2}二级分类英文名称 示例: {maxz_loop:itemloop0} <li> {/maxz_loop} 2.友情链接列表标签 {maxz_loop:linklooplinktype} 自由排版区 {/maxz_loop} 参数 Linktype:为数字类型,值为0时显示文字链接,值为1时显示图片链接 自由排版区可用的变量 {link_title}站点名称 {link_url}链接网址 {link_pic}链接图片 {link_content}站点简介 示例: {maxz_loop:linkloop1} </li><li> {/maxz_loop} 3.关键字列表标签 {maxz_loop:keyloop} 自由排版区 {/maxz_loop} 参数:暂无 自由排版区可用的变量: {keywords}关键词 示例: {maxz_loop:keyloop} {/maxz_loop} 4.视频调用标签 {maxz_loop:videoloopvOrder,vTypeid,vNum,vLen,vLen1,vLen2,vRecommendID,vTime} 自由排版区 {/maxz_loop} 参数 vOrder:视频列表排序方式,数字类型,值为0按照时间排序,为1按照推荐排序,为2按照点击量排序,为3按照顶过量排序,为2按照踩量排序,为2按照ID排序 vTypeid:视频列表所在的分类ID,数字类型,值为-1表示当前分类,为0表示全部分类,其它为指定某个分类ID vNum:视频列表数量,数字类型,值为0时表示取出所有,其他值表示指定数量 vLen:每条视频的标题字符长度,数字类型 vLen1:每条视频的演员字符长度,数字类型 vLen2:每条信息的内容简介字符长度,数字类型 vRecommendID:视频的推荐种类,数字类型,-2为全部视频,-1为全部推
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值