下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国CMS首页、列表页实现点赞功能解析与demo

314 2021-03-04 15:54:14

收藏
帝国cms的点赞数是通过动态脚本载入的方式实时输出,而a标签上的makeRequest()函数就是用来实现顶一下功能的方法。了解这个原理之后,列表页、首页的点赞就很容易了。

makeRequest()函数的第一个参数是请求地址并附带参数数据,第二个参数是成功请求后执行的回调函数名,第三个参数指定以GET方式发送请求。了解实现的原理之后就很容易在网站其他页面上实现顶一下(点赞)功能。

现有列表模板如下,var如下
$nomar="";
if($no%4==0){$nomar=" class=\"nomar\"";}else{$nomar="";}
if($r[titlepic]){$tpic=sys_ResizeImg($r[titlepic],300,300,1,"");}else{$tpic="/e/data/images/notimg.gif";}

$listtemp='
    <li>
        <a href="[!--titleurl--]" class="icon-thumbs-up" data-classid="[!--classid--]" data-id="[!--id--]"><em>[!--diggtop--]</em>人赞过</a>
    </li>
';

JS部分如下:

<script type="text/javascript">
$(".icon-thumbs-up").click(function(event){
    event.preventDefault();
    var mythis = $(this);
    var classid = mythis.data("classid");
    var id = mythis.data("id");
    $.ajax({
        type:"GET",
        url:"[!--news.url--]e/public/digg/",
        data:{"classid":classid,"id":id,"dotop":1,"doajax":1,"ajaxarea":"diggnum"},
        dataType:"text",
        success:function(data){
            var reinfo = data.split("|");
            if (reinfo.length != 1) {
                if (reinfo[0] != "") {
                    mythis.find("em").html(reinfo[0]);
                }
                if (reinfo[2] != "") {
                    //var left = parseInt(mythis.offset().left)+20, top = parseInt(mythis.offset().top);
                    var left = 20, top = mythis.find("em").get(0).offsetHeight;
                    $(".zan").remove();
                    if (reinfo[2] == "谢谢您的支持") {
                        mythis.append('<div class="zan">+1 谢谢您的支持</div>');
                        //$("body").append('<div class="zan">+1 谢谢您的支持</div>');
                    }else{
                        mythis.append('<div class="zan">已赞</div>');
                        //$("body").append('<div class="zan">已赞</div>');
                    }
                    //"text-shadow":"0 1px 0 rgba(0,0,0,0.5)","font-family":"simsun"
                    $(".zan").css({"position":"absolute","z-index":"10","left":left+"px","top":-top+"px","color":"inherit"}).animate({top:-top-30},"slow",function(){$(this).fadeIn("fast").remove();});
                }
            }else{}
        }
    });
});
</script>

本文地址:https://xzo.com.cn/develop/empire/659.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS多值字段怎样增加上传图片的功能?
帝国CMS多值字段怎样增加上传图片的功能?

帝国CMS多值字段是一个字段包含N条内容的方法,通过合理运用多值字段,我们可以...

1 277
帝国cms灵动标签调用友情链接的多种形式
帝国cms灵动标签调用友情链接的多种形式

帝国cms怎样用灵动标签调用友情链接?又要怎样区分链接有没有图片、友情链接...

1 374
帝国cms面包屑导航[!–newsnav–]修改方式大合集
帝国cms面包屑导航[!–newsnav–]修改方式大合集

本文介绍的帝国cms面包屑导航newsnav修改为newsnav完整的修改攻略,包括标签...

11 1812
帝国CMS怎样根据栏目关键字调用Tags信息
帝国CMS怎样根据栏目关键字调用Tags信息

在帝国cms开发过程中,我们经常会遇到这样那样的需求。就如栏目信息的展示,有...

1 391
帝国cms怎样去掉面包屑导航里的隐藏栏目
帝国cms怎样去掉面包屑导航里的隐藏栏目

帝国cms有隐藏栏目的功能,但隐藏栏目的文章如果展示,面包屑导航里会带上被隐...

1 510
帝国cms怎样判断文章有没有缩略图?
帝国cms怎样判断文章有没有缩略图?

在帝国cms二次开发过程中,我们有时会需要判断一条信息有没有缩略图(标题图)。...

0 273
帝国cms多站点跨库调用
帝国cms多站点跨库调用

一台服务器如果存在多个站点,则这些站点的数据可以互相调用。通过互相调用,我...

0 320
帝国cms外部引入百度统计代码防止被刷统计后台广告优化
帝国cms外部引入百度统计代码防止被刷统计后台广告优化

百度统计后台的广告十分猖獗,而百度统计提供的屏蔽规则并不好用,这个时候,我们...

0 366
随机帝国CMS开发教程
帝国cms的fetch()和fetch1()有什么区别?
帝国cms的fetch()和fetch1()有什么区别?

fetch()和fetch1()是帝国CMS二次开发常用到的函数,虽然只差了一个1,但其函数...

7 512
帝国cms后台出现“您还未登录”错误怎么办
帝国cms后台出现“您还未登录”错误怎么办

帝国cms测试多次,绝对是正确的用户名和密码登录,但还是显示您还未登录的原因...

3 356
帝国cms文章列表、详情怎样实时显示点击数?
帝国cms文章列表、详情怎样实时显示点击数?

常有客户要求文章列表、详情能够实时显示点击数,但又不想将静态页面改为动态...

6 439
帝国CMS 8.0版本即将上线,届时不再支持GBK、BIG5编码
帝国CMS 8.0版本即将上线,届时不再支持GBK、BIG5编码

3月1日上午10点,帝国cms创始人王猛发布微博称8.0版本不再支持gbk、big5编码...

8 544
帝国CMS灵动标签调用留言板信息(附留言板字段解读)
帝国CMS灵动标签调用留言板信息(附留言板字段解读)

帝国cms调用留言板信息是可以调用到任意位置的,灵动标签即可办到。通过通配...

10 521
帝国cms怎样开发下载分成功能?
帝国cms怎样开发下载分成功能?

帝国CMS下载分成网上有很多插件,但操作起来都相对比较复杂,且免费插件存在安...

17 534
帝国cms登陆报错INSERT command denied to user 'username'@'::1' for table 'phome_enewsloginfail' inser
帝国cms登陆报错INSERT command denied to user 'username'@'::1' for table 'phome_enewsloginfail' inser

今天,有客户联系鸥哥说帝国cms登陆后台报错INSERT command denied to user ...

3 559
帝国CMS灵动标签显示标题颜色、截取标题字数DoTitleFont()怎么做?
帝国CMS灵动标签显示标题颜色、截取标题字数DoTitleFont()怎么做?

帝国cms采用灵动标签调用信息时,我们一般会习惯于用<?=$bqr[title]?>输出标...

7 552
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入