实现百度的换一换(一)

*{

margin: 0;

padding: 0;

}

#maxbox{

width: 405px;

height: 400px;

margin: 0 auto;

}

/* 这是标题部分 */

#maxbox .changlink{

width: 405px;

height: 40px;

line-height:40px;

background: pink;

}

/*搜索热点部分 */

#maxbox .changlink .searchhot{

display: inline-block;

margin-left: 10px;

}

/* 换一换 */

#maxbox .changlink .change{

text-decoration: none;

margin-left: 265px;

}

/* 内容区域最大的盒子 设置宽高 超出部分消失 它的高度应该和每一批的高度一致 24*6=144 */

#maxbox .listcontentbox {

position: relative;

overflow: hidden;

width: 405px;

height: 144px;

}

/* li的父级元素ui */

#maxbox .listcontentbox .listcontent{

position: absolute;

list-style: none;

}

#maxbox .listcontentbox .listcontent>li{

height: 24px;

width: 405px;

line-height: 24px;

background: #ccc;

}

#maxbox .listcontentbox .listcontent>li:nth-child(even){

background-color: #E6E6E6

}

<!--

布局=》 一个大的div 中包含2个小的div 一个是标题 一个是内容 内容中有ul 》li

css样似=》

内容区域最大的盒子 设置宽高 超出部分消失 它的高度应该和每一批的高度一致 24*6=144 相对定位

li的父级元素ul绝对定位

li内容区域应该这是行高 和高度

思路:

计算li的父级ui的高度。----》计算现实6个li的高度-----》定义一个索引值,点击按钮,索引值加1----》ul上上移动

if(num==6){ //如果有n批就等于n

num=0;

}

ul.style.top=-liheight*num+"px"; //这里是ul往上移动,而不是ul的高度往上移动

-->

<div id="maxbox">

<!-- 这是标题部分 -->

<div class="changlink">

<span class="searchhot">搜索热点</span> <a href="javascript:;" class="change">换一换</a>

</div>

<!-- 这是内容部分 -->

<div class="listcontentbox">

<ul class="listcontent">

<li>1111111</li>

<li>2222222</li>

<li>1111111</li>

<li>4444444</li>

<li>1111111</li>

<li>66666666</li>

<li>1111111</li>

<li>2222sfsfsdf222</li>

<li>1111111</li>

<li>4444222sfsfsdf444</li>

<li>1111111</li>

<li>66666666</li>

<li>1111111</li>

<li>2222222</li>

<li>11111sfsf11</li>

<li>4444444</li>

<li>1111111</li>

<li>6666sfs6666</li>

<li>1111111</li>

<li>22222fsd22</li>

<li>1111111</li>

<li>4444444</li>

<li>1111111</li>

<li>66666666</li>

<li>1111111</li>

<li>22sczfdsfsfdfsdf22222</li>

<li>1111111</li>

<li>4444444</li>

<li>1111sfsf111</li>

<li>66666666</li>

<li>1111111</li>

<li>2222222</li>

<li>11111sfsdf11</li>

<li>4444444</li>

<li>1111111</li>

<li>66666666</li>

</ul>

</div>

</div>

// css中ul要超出部分就隐藏起来

var changeLinkModule=(function(){

// 计算li的父级ui的高度

var ul=document.querySelector(".listcontent");

var ulheight=ul.offsetHeight;

console.log(ulheight); //

// 计算现实6个li的高度

var li=document.querySelector(‘li‘);

var liheight=li.offsetHeight * 6;

console.log("每一批的高度是"+liheight); //24*6=144

var num=0;// 定义一个索引值

var change= document.querySelector(".change"); //选中按钮

var changelist=function(){

change.addEventListener(‘click‘,function(){

// alert("1");

// 这里你打不出来是是因为后面 你没有调用

num++;

if(num==6){ //如果有n批就等于n

num=0;

}

ul.style.top=-liheight*num+"px"; //这里是ul往上移动,而不是ul的高度往上移动

});

};

return {

huanyihuan:changelist

}

})();

changeLinkModule.huanyihuan();

原文地址:https://www.cnblogs.com/IwishIcould/p/10421280.html

时间: 2024-08-29 03:02:03

实现百度的换一换(一)的相关文章

iPhone5S进水返厂维修多少钱售后换主板换新机5S进水里不开机维修多少钱(推荐维修)

 为什么网上的价格差距这么大?为什么打电话问的商家报的价格都不一样?哪种几百块钱的屏幕(芯片)能相信吗?淘宝上面的屏幕(芯片)能相信吗?哪里能找到原装的屏幕呢?哪里的维修点才靠谱呢?北京中关村和深圳那边的维修市场能相信吗?     电子城报的二三百能相信吗?原装的配件和仿的价钱相差多少呢?       当您看到了这里,请您选择飞维智能科技有限责任公司(我们用最真挚的态度来为您服务)   我们在保证质量的前提下用最低的价格来为广大客户服务.我们的原则是(少花钱,买放心,保质量,求口碑)   工程师

换一换js

(function(){ var tit = $("#changes"), con = $("#wday>ul"), page = con.length,        index = 0; tit.click(function(){            if(index < page){                index++;            }else{                index = 0;            }  

开博第一篇:记一个前端实现的“换一换”功能

需求的极简概要:实现“换一换”按钮的功能,点击之后,换另一批对应的品牌 刚开始的时候考虑使用ajax请求数据,之后通过js在页面上填充到指定位置,但是真是懒得给这个ajax请求单独再配一个请求映射了,干脆直接在后台把需要的内容全部拼成JSON字符串,直接在前台解析,分页. 页面比较简单,就不上html代码了,大概思路就是:两个“换一换”按钮分别对应两套数据,共用一个分页的方法,分别传入各自的页数,显示对应页数的内容.当然了,实现“换一换”的方法多种多样,我在此只是记录一下自己的思路,欢迎批评指教

vue换一换功能原型

<html> <meta charset="utf-8"> <head> <script src="https://cdn.bootcss.com/vue/2.5.17-beta.0/vue.min.js"></script> </head> <body> <div id="app"> <ul v-show="flag==1"

css3 换一换效果

<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> <style media="screen"> .header{ width: 80px ; height: 80px; border: 1px solid #ccc;

随笔-cnzz,百度统计,异步换统计,地址栏换地址

******************************* <script>//百度统计var _hmt = _hmt || [];_hmt.push(['_setAccount', 'a2915193765b4211795685124561a792']); //声明_czc对象:var _czc = _czc || [];//绑定siteid,请用您的siteid替换下方"XXXXXXXX"部分_czc.push(["_setAccount", &

android 换肤换主题(apk包方式)

更换皮肤的方式有很多种,有更换背景图片的(图片来源于程序资源文件.sdCard.网络下载).有更换theme样式的.也有apk的等等. 用apk的方式更换程序皮肤,这样的方式,方便,简单,而且使主程序的apk包较小. 先下载皮肤apk包,安装,然后使现在的程序读取新安装的apk包中的资源文件,下次再打开程序时,依旧读取的是上次设置的apk的资源,如果主题apk被卸载,那么就读取的是默认的资源. 核心代码(完整代码见项目压缩包)如下: 主程序: 读取已经安装了的皮肤包的包名.应用图标和应用名称,当

为何运营商会鼓励我们不停换号换手机?

据Statista(paywall)称,截至2016年春季,约有2500万无线客户计划在次年改变运营商.事实上,尽管行业增长稳定,据研究公司Strategy Analytics收集的数据,Fierce Wireless发布的数据显示,每个月大约有670万人离开前四名的运营商. 我们可以从这些数字中推断出,即使无线服务的需求不断增加,数百万的手机用户却对这个行业的现状不满意.实际上这种不满是有原因的--好几个原因: 从无尽的神秘费用到混乱的设备选项,每个移动提供商声称拥有最好,最快,最可靠的服务,

iPhone5S维修主板多少钱换一个主板主板换一个多少钱

为什么网上的价格差距这么大?为什么打电话问的商家报的价格都不一样?哪种几百块钱的屏幕(芯片)能相信吗?淘宝上面的屏幕(芯片)能相信吗?哪里能找到原装的屏幕呢?哪里的维修点才靠谱呢?北京中关村和深圳那边的维修市场能相信吗? 电子城报的二三百能相信吗?原装的配件和仿的价钱相差多少呢? 当您看到了这里,请您选择飞维智能科技有限责任公司(我们用最真挚的态度来为您服务) 我们在保证质量的前提下用最低的价格来为广大客户服务.我们的原则是(少花钱,买放心,保质量,求口碑) 工程师:罗飞报修热线:158 110