哈喽朋友们,下面为大家分享一段代码测试。
html代码
<body> <div class="box" id="box"> <div class="inner"> <ul> <li> <a href="#"><img src="../image/1.jpg" alt=""></a> </li> <li> <a href="#"><img src="../image/2.jpg" alt=""></a> </li> <li> <a href="#"><img src="../image/3.jpg" alt=""></a> </li> <li> <a href="#"><img src="../image/4.jpg" alt=""></a> </li> <li> <a href="#"><img src="../image/5.jpg" alt=""></a> </li> <li> <a href="#"><img src="../image/6.jpg" alt=""></a> </li> </ul> <ol> </ol> </div> <div class="focus"> <div class="left-button"> <div></div> </div> <div class="right-button"> <div></div> </div> </div> </div> </body>
css代码
<style>
* {
margin: 0px;
padding: 0px;
}
li {
list-style: none;
}
.box {
position: relative;
width: 500px;
height: 300px;
margin: 50px auto;
border: solid 1px #cccccc;
}
.inner {
position: relative;
width: 490px;
height: 290px;
margin: 5px;
overflow: hidden;
}
.inner ul {
position: absolute;
width: 1000%;
height: 100%;
}
.inner ul li {
float: left;
width: 490px;
height: 290px;
}
.inner ul li a img {
width: 100%;
height: 100%;
}
.focus {
position: absolute;
display: none;
width: 490px;
height: 30px;
top: 0px;
bottom: 0px;
left: 5px;
margin: auto;
}
.left-button,
.right-button {
position: absolute;
width: 30px;
height: 30px;
line-height: 30px;
text-align: center;
top: 0px;
bottom: 0px;
margin: auto;
background: rgba(0, 0, 0, 0.5);
color: white;
}
.right-button {
right: 0px;
}
.left-button>div,
.right-button>div {
width: 15px;
height: 15px;
margin-top: 7.5px;
border: solid 2px white;
box-sizing: border-box;
transform: rotateZ(45deg);
}
.left-button>div {
border-top: none;
border-right: none;
margin-left: 10px;
}
.right-button>div {
position: absolute;
border-bottom: none;
border-left: none;
right: 10px;
}
ol {
position: absolute;
height: 20px;
bottom: 10px;
right: 10px;
}
ol li {
display: inline-block;
width: 20px;
height: 20px;
margin-left: 5px;
line-height: 20px;
border-radius: 50%;
text-align: center;
text-decoration: none;
font-size: 12px;
background: rgba(0, 0, 0, 0.5);
}
.current {
background: orangered;
color: white;
}
</style>JS代码
<script>
//封装根据id获取dom
function myFunction(id) {
return document.getElementById(id);
}
//封装动画函数
function animate(element, target) {
clearInterval(element.timeId)
element.timeId = setInterval(function() {
var current = element.offsetLeft;
var step = 10;
step = current < target ? step : -step;
current += step;
if (Math.abs(current - target) > Math.abs(step)) {
element.style.left = current + "px";
} else {
clearInterval(element.timeId);
element.style.left = target + "px";
}
}, 10)
}
//获取最外面的div
var box = myFunction("box");
//获取相框
var inner = box.children[0];
//获取相框宽度
var innerWidth = inner.offsetWidth;
//获取ul
var ulObj = inner.children[0];
//获取ol
var olObj = inner.children[1];
//获取ul中的li
var liObjs = ulObj.children;
//获取focus
var focus = box.children[1];
//声明变量存储点击当前按钮的索引
var index = 0;
//设置小按钮功能
for (var i = 0; i < liObjs.length; i++) {
var lis = document.createElement("li");
lis.innerHTML = i + 1;
olObj.appendChild(lis);
lis.setAttribute("index", i);
lis.onclick = function() {
for (var j = 0; j < olObj.children.length; j++) {
olObj.children[j].removeAttribute("class");
}
this.className = "current";
index = this.getAttribute("index");
animate(ulObj, -index * innerWidth);
}
olObj.children[0].className = "current";
};
//右边按钮功能
//克隆第一个图片放在ul最后
ulObj.appendChild(ulObj.children[0].cloneNode(true));
//自动播放
var timeId = setInterval(rightClick, 1000);
//鼠标移入移出,左右按钮显示和隐藏
box.onmouseover = function() {
focus.style.display = "block";
clearInterval(timeId);
};
box.onmouseout = function() {
focus.style.display = "none";
timeId = setInterval(rightClick, 1000);
};
//右边按钮功能函数
function rightClick() {
if (index == liObjs.length - 1) {
index = 0;
ulObj.style.left = 0 + "px";
}
index++;
animate(ulObj, -index * innerWidth);
//每张图片对应的按钮背景改变
if (index == liObjs.length - 1) {
olObj.children[olObj.children.length - 1].className = "";
olObj.children[0].className = "current";
} else {
for (var i = 0; i < olObj.children.length; i++) {
olObj.children[i].removeAttribute("class");
}
olObj.children[index].className = "current";
}
};
//调用右边功能按钮函数
focus.children[1].onclick = rightClick;
//左边按钮
console.log(focus.children[0]);
focus.children[0].onclick = function() {
if (index == 0) {
index = ulObj.children.length - 1;
console.log(index);
console.log(-index * innerWidth);
ulObj.style.left = -index * innerWidth + "px";
}
index--;
animate(ulObj, -index * innerWidth);
for (var i = 0; i < olObj.children.length; i++) {
olObj.children[i].removeAttribute("class");
}
olObj.children[index].className = "current";
};
</script>php代码
function 主题ID_GetArticleCategorys($Rows,$CategoryID,$hassubcate){
global $zbp;
$ids = strpos($CategoryID,',') !== false ? explode(',',$CategoryID) : array($CategoryID);
$wherearray=array();
foreach ($ids as $cateid){
if (!$hassubcate) {
$wherearray[]=array('log_CateID',$cateid);
}else{
$wherearray[] = array('log_CateID', $cateid);
foreach ($zbp->categorys[$cateid]->SubCategorys as $subcate) {
$wherearray[] = array('log_CateID', $subcate->ID);
}
}
}
$where=array(
array('array',$wherearray),
array('=','log_Status','0'),
);
$order = array('log_PostTime'=>'DESC');
$articles= $zbp->GetArticleList(array('*'),$where,$order,array($Rows),'');
return $articles;
}以上就是代码高亮的演示效果。

