热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php新闻列表排序,javascript新闻列表排序简单封装

可以控制列表按日期以及按字数排序.升或者降序.代码简单封装,按一定的格式调用即可。代码写的比较繁琐,很多方法用的很原始代码如下:简单

可以控制列表按日期以及按字数排序.升或者降序.代码简单封装,按一定的格式调用即可。

代码写的比较繁琐,很多方法用的很原始...

代码如下:

简单说明:

调用方法:list_sort(list_id,btn1,btn2)

list_id-- 新闻列表ul的id;

btn1-- 按字数排序事件的id;

btn2-- 按日期排序事件的id;

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

js代码如下:

function $(s){

return document.all?document.all[s]:document.getElementById(s);

}

function list_sort(list_id,btn1,btn2){

var list=$(list_id).getElementsByTagName("li");

var c_date=$(list_id).getElementsByTagName("span");

var content=$(list_id).getElementsByTagName("a");

var date=new Array(),con=new Array,date1=new Array(),con1=new Array,list_con=new Array;

for (var i=0;i

{date1[i]=date[i]=c_date[i].innerHTML;

list_con[i]=list[i].innerHTML;

con1[i]=con[i]=content[i].innerHTML.length;

}

con.sort(function(x,y){return parseInt(x)-parseInt(y);});//将字符长度排序

date.sort(function sortDate(a,b)

{

return new Date(a.replace(/-/,"/")) - new Date(b.replace(/-/,"/"));

});//将日期排序.

function darry(arry1,arry2){//取数组下标函数。

var b=new Array();

for (var n=0;n

{for (var m=0;m

{if (arry1[m]==arry2[n]) b[n]=m;

}

}

return b;

}

var top=0;//定义排序方向浮标

$(btn1).οnclick=function(){insetHTM(con1,con)}

$(btn2).οnclick=function(){insetHTM(date1,date)}

function insetHTM(ary1,ary2){ //排序后的html输出到ul中

var c=darry(ary1,ary2);//取得排序后数组的下标

var list_html="";//定义变量存储排序后的html

if (top==0)

{for (var k=0;k

{list_html+="

"+list_con[c[k]]+"";top=1}

}

else

{ for (var k=list.length-1;k>=0;k--)

{list_html+="

"+list_con[c[k]]+"";top=0}

}

$(list_id).innerHTML=list_html;

}

}

window.οnlοad=function(){

list_sort("news_list","button1","button2")

}



推荐阅读
author-avatar
狮子胯下
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有