织梦列表页,支持顶(赞)和踩的功能,顶过后标红高
01<script language="javascript" type="text/javascript"> 02function postDigg(ftype,aid) 03{ 04 var taget_obj = document.getElementById('diggNum'+aid); 05 06 var saveid = GetCookie('diggid'); //我所有赞过的文章id 07 //alert(saveid); 08 if(saveid != null) 09 { 10 var saveids = saveid.split(','); 11 var hasid = false; 12 saveid = ''; 13 j = 1; 14 for(i=saveids.length-1;i>=0;i--) 15 { 16 if(saveids[i]==aid && hasid) continue; //我顶过 17 else { 18 if(saveids[i]==aid && !hasid) hasid = true; 19 saveid += (saveid=='' ? saveids[i] : ','+saveids[i]); 20 j++; 21 if(j==20 && hasid) break; 22 if(j==19 && !hasid) break; 23 } 24 } 25 if(hasid) { 26 //alert("您已经顶过该帖,请不要重复顶帖 !"); 27 //如果点击后,被赞过.则不需要更新统计,直接改变颜色 28 $('#digg'+aid).addClass("icon-heart-on"); 29 return; 30 } 31 else saveid += ','+aid; 32 SetCookie('diggid',saveid,1); 33 34 } 35 else 36 { //如果cookie中无记录,则记录 37 SetCookie('diggid',aid,1); 38 39 } 40 myajax = new DedeAjax(taget_obj,false,false,'','',''); 41 var url = "{dede:global.cfg_phpurl/}/digg_ajax_list.php?action="+ftype+"&id="+aid; 42 myajax.SendGet2(url); 43 44 DedeXHTTP = null; 45} 46 47</script> |
{dede:arclist row='6' orderby='id' titlelen='100'} <span id="diggNum[field:id/]"><a href="javascript:"class=" text-bbb text-16" onclick="javascript:postDigg('good',[field:id/])"><span id="digg[field:id/]" class="icon-heart2 "></span></a>[field:goodpost/] </span> {/dede:arclist} |
css
.icon-heart2{ background: url(../images/bg-main.png) -22px 5px no-repeat; } .icon-heart2:hover{ background: url(../images/bg-main.png) 2px 4px no-repeat; } .icon-heart-on{ background: url(../images/bg-main.png) 2px 4px no-repeat; } |
然后在,plus中新建立一个digg_ajax_list.PHP文件,内容为
01
|