1、假设知道总页数和当前页码,写出一个生成页码函数,要求当前页码用粗体显示,当前页码前后各显示n个页码(n可设置),总的显示数目是2n+1(15分)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>New Web Project</title>
<style type="text/css">
.current {
font-weight:bolder;
color:#8CCA12;
}
</style>
</head>
<body>
<div id="page">
</div>
<script type="text/javascript">
function showPage (totalPages,curPage,showPage) {
var page = document.getElementById("page");
var first;//第一页
var last;//最后一页
var newNode;//插入的新节点
if((curPage - showPage) > 0){
first = curPage - showPage;
}
else{
first = 1;
}
if(totalPages > (curPage + showPage)){
last = curPage + showPage;
}
else{
last = totalPages;
}
for( ; first <= last; first++){
if(first == curPage){
newNode = document.createElement("span");
newNode.innerHTML = "--" + first + "--";
newNode.className = "current";
page.appendChild(newNode);
}
else{
newNode = document.createElement("span");
newNode.innerHTML = "--" + first + "--";
page.appendChild(newNode);
}
}
}
showPage(10,5,4);
</script>
</body>
</html>
在IE、FF下均测试通过,注意createElement() innerHTML() appendChild()的使用
2、给定一个数组,请实现一个方法:每次都随机返回此数组中的一个元素
<script type="text/javascript">
function radomShow(arr){
var j = parseInt(arr.length * Math.random());
alert(arr[j]);
}
var num = new Array();
for(var i =0;i<1000 ;i++){
num[i] = parseInt(1000 * Math.random());
}
radomShow(num);
</script>