帝国cms 点赞功能
2021-05-30 10:35:31
7.5自带的点赞功能好像比较简单,改造了一下,支持点赞后直接显示点赞数量,如果已经点赞过了会显示相应提示
html:
<a href="JavaScript:makeRequest('/e/public/digg/?classid=[!--classid--]&id=[!--id--]&dotop=1&doajax=1&ajaxarea=diggnum','EchoReturnedText','GET','');" rel="external nofollow" >
<i class="iconfont mdz"></i>
<i class="iconfont ydz"></i>
</a>
<span id="diggspan"><script type="text/javascript" src="/e/public/ViewClick/?classid=[!--classid--]&id=[!--id--]&down=5"></script></span></div>
</div>
改造:ajax.js
var http_request = false;
function makeRequest(url, functionName, httpType, sendData) {
http_request = false;
if (!httpType) httpType = "GET";
if (window.XMLHttpRequest) { // Non-IE...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/plain');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Cannot send an XMLHTTP request');
return false;
}
var changefunc="http_request.onreadystatechange = "+getReturnedText;
eval (changefunc);
//http_request.onreadystatechange = alertContents;
http_request.open(httpType, url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(sendData);
}
function getReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var messagereturn = http_request.responseText;
if(messagereturn.indexOf("您已提交过") != -1)
{
document.getElementById("diggspan").innerText=document.getElementById("diggspan").innerText+' 您已赞过了!';
}
else
{
var diggcount = GetDiggCount(messagereturn);
if(diggcount!='')
document.getElementById("diggspan").innerText=diggcount;
}
// return messagereturn;
} else {
alert('There was a problem with the request.');
}
}
}
// 获取顶数量
function GetDiggCount(msg)
{
var str = msg;
var res = str.split("|");
return res[0];
}
function EchoReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var messagereturn = http_request.responseText;
if(messagereturn!='isfail')
{
var r;
r=messagereturn.split('|');
if(r.length!=1)
{
if(r[0]!='')
{
document.getElementById(r[1]).innerHTML=r[0];
}
if(r[2]!='')
{
alert(r[2]);
}
}
else
{
document.getElementById('ajaxarea').innerHTML=messagereturn;
}
}
} else {
alert('There was a problem with the request.');
}
}
}
function edoshowkey(showid,vname,baseurl){
document.getElementById(showid).innerHTML='<img src="'+baseurl+'e/ShowKey/?v='+vname+'&t='+Math.random()+'" name="'+vname+'KeyImg" id="'+vname+'KeyImg" align="bottom" onclick=edoshowkey("'+showid+'","'+vname+'","'+baseurl+'") title="看不清楚,点击刷新">';
}
function edozoomimg(o){
var zoom=parseInt(o.style.zoom, 10)||100;zoom+=event.wheelDelta/12;if (zoom>0) o.style.zoom=zoom+'%';
return false;
}
function edoautosimg(o){
if(o.width>screen.width*0.5)
{
o.width=screen.width*0.5;
}
}
html:
<a href="JavaScript:makeRequest('/e/public/digg/?classid=[!--classid--]&id=[!--id--]&dotop=1&doajax=1&ajaxarea=diggnum','EchoReturnedText','GET','');" rel="external nofollow" >
<i class="iconfont mdz"></i>
<i class="iconfont ydz"></i>
</a>
<span id="diggspan"><script type="text/javascript" src="/e/public/ViewClick/?classid=[!--classid--]&id=[!--id--]&down=5"></script></span></div>
</div>
改造:ajax.js
var http_request = false;
function makeRequest(url, functionName, httpType, sendData) {
http_request = false;
if (!httpType) httpType = "GET";
if (window.XMLHttpRequest) { // Non-IE...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/plain');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Cannot send an XMLHTTP request');
return false;
}
var changefunc="http_request.onreadystatechange = "+getReturnedText;
eval (changefunc);
//http_request.onreadystatechange = alertContents;
http_request.open(httpType, url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(sendData);
}
function getReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var messagereturn = http_request.responseText;
if(messagereturn.indexOf("您已提交过") != -1)
{
document.getElementById("diggspan").innerText=document.getElementById("diggspan").innerText+' 您已赞过了!';
}
else
{
var diggcount = GetDiggCount(messagereturn);
if(diggcount!='')
document.getElementById("diggspan").innerText=diggcount;
}
// return messagereturn;
} else {
alert('There was a problem with the request.');
}
}
}
// 获取顶数量
function GetDiggCount(msg)
{
var str = msg;
var res = str.split("|");
return res[0];
}
function EchoReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var messagereturn = http_request.responseText;
if(messagereturn!='isfail')
{
var r;
r=messagereturn.split('|');
if(r.length!=1)
{
if(r[0]!='')
{
document.getElementById(r[1]).innerHTML=r[0];
}
if(r[2]!='')
{
alert(r[2]);
}
}
else
{
document.getElementById('ajaxarea').innerHTML=messagereturn;
}
}
} else {
alert('There was a problem with the request.');
}
}
}
function edoshowkey(showid,vname,baseurl){
document.getElementById(showid).innerHTML='<img src="'+baseurl+'e/ShowKey/?v='+vname+'&t='+Math.random()+'" name="'+vname+'KeyImg" id="'+vname+'KeyImg" align="bottom" onclick=edoshowkey("'+showid+'","'+vname+'","'+baseurl+'") title="看不清楚,点击刷新">';
}
function edozoomimg(o){
var zoom=parseInt(o.style.zoom, 10)||100;zoom+=event.wheelDelta/12;if (zoom>0) o.style.zoom=zoom+'%';
return false;
}
function edoautosimg(o){
if(o.width>screen.width*0.5)
{
o.width=screen.width*0.5;
}
}