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

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

488 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百度推送插件怎样将默认ID排序改为时间倒序?
帝国CMS百度推送插件怎样将默认ID排序改为时间倒序?

很多采集站点可能是这样操作的:采集好的资讯时间是采集时间,到了发布的时候会...

19 690
帝国cms文章编辑怎样默认勾选加水印、远程保存图片?
帝国cms文章编辑怎样默认勾选加水印、远程保存图片?

帝国cms是带有远程保存图片、图片加水印功能的,但都是默认未勾选的状态,我们...

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

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

1 558
帝国cms多站点跨库调用
帝国cms多站点跨库调用

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

0 493
帝国cms会员注册怎样跳过选择会员组类型?
帝国cms会员注册怎样跳过选择会员组类型?

帝国cms会员注册必须要选择会员组类型,哪怕你只有一个会员组也一样。那么,我...

0 486
帝国cms怎样开通在线QQ客服无好友聊天
帝国cms怎样开通在线QQ客服无好友聊天

QQ客服是很多帝国cms网站的在线客服方案,开通QQ客服没有门槛,而且接收信息方...

0 632
帝国cms默认评论表情添加修改调用与删除
帝国cms默认评论表情添加修改调用与删除

帝国cms评论中默认的表情包是QQ表情,默认显示10个,可以添加可以修改,本文详细...

0 465
帝国cms怎样修改系统模型ID
帝国cms怎样修改系统模型ID

帝国cms默认是不允许修改系统模型ID的,因为一旦修改牵扯较大。那么,如果一定...

0 849
推荐插件
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 519
帝国cms访问统计ip地址链接与封禁插件下载
帝国cms访问统计ip地址链接与封禁插件下载

下载鸥开发了这款帝国cms封禁ip插件,自动记录访问情况,让我们可以更快的识别...

0 1175
帝国CMS内网用户静态站点文章访客统计插件
帝国CMS内网用户静态站点文章访客统计插件

本插件适用于内网用户,可查看单篇文章访问者ip地址。如果添加访问者ip组,可查...

0 635
帝国cms在线考试系统模板插件
帝国cms在线考试系统模板插件

一直没看到好用的帝国cms在线考试插件,所以自己开发了一款。在线考试插件用...

0 1385
帝国cms百度文字识别ocr接口对接插件
帝国cms百度文字识别ocr接口对接插件

许多网站会做一些小功能小插件给客户使用以增强用户黏性,比如图片转文字,这种...

0 532
帝国cms自动给正文关键词添加tag内链
帝国cms自动给正文关键词添加tag内链

帝国cms有自带的给关键词添加内链功能,但需要手动添加关键词,容易出现疏漏和...

0 919
帝国cms百度AI图像无损放大api接口对接插件
帝国cms百度AI图像无损放大api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像无损放大的功能。经过...

0 525
帝国cms网站会员登录与退出历史记录日志插件
帝国cms网站会员登录与退出历史记录日志插件

帝国cms默认只有上次登录时间与ip,没有一个记录清单,所以今天,我们分享这个帝...

0 478
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入