js 实现纵向轮播
效果

html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>纵向滚动</title>
<link rel="stylesheet" type="text/css" href="css/scrollVertical.css">
</head>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="js/scroll.js"></script>
<body>
<div id="scrollFlash" class="scrollFlash">
<ul class="ulFlash"></ul>
</div>
<script type="text/javascript">
var list = [{
"id": "1",
"name": "张一",
},
{
"id": "2",
"name": "王二",
}
];
if (list.length > 0) {
$('#scrollFlash').show();
var j = 0;
while (j < list.length) {
var string = "<li>序号<span class='flashName t_center'>" +
list[j].id + "</span>姓名<span class='flashName t_center'>" +
list[j].name + "</span></li>";
$('.ulFlash').append(string);
j++;
}
var h = $('.ulFlash li:first-child').height() + 5;
if (list.length > 1) {
$("div#scrollFlash").myScroll({
speed: 40, // 数值越大,速度越慢
rowHeight: h // li的高度
});
}
}
</script>
</body>
</html>
scrollVertical.css
.t_center {
text-align: center;
}
#scrollFlash {
width: 80%;
margin: 100px auto auto auto;
height: 60px;
background-color: lightcoral;
line-height: 60px;
padding: 5px;
font-size: 40px;
overflow: hidden;
color: #ffffff;
}
#scrollFlash ul li {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 2px;
}
.flashName {
max-width: 20%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
scroll.js
(function($){
$.fn.myScroll = function(options){
//默认配置
var defaults = {
speed:40, //滚动速度,值越大速度越慢
rowHeight:24 //每行的高度
};
var opts = $.extend({}, defaults, options),
intId = [];
function marquee(obj, step){
obj.find("ul").animate({
marginTop: '-=1'
},0,function(){
var s = Math.abs(parseInt($(this).css("margin-top")));
if(s >= step){
$(this).find("li").slice(0, 1).appendTo($(this));
$(this).css("margin-top", 0);
}
});
}
this.each(function(i){
var sh = opts["rowHeight"],speed = opts["speed"],
_this = $(this);
intId[i] = setInterval(function(){
if(_this.find("ul").height()<=_this.height()){
clearInterval(intId[i]);
}else{
marquee(_this, sh);
}
}, speed);
_this.hover(function(){
clearInterval(intId[i]);
},function(){
intId[i] = setInterval(function(){
if(_this.find("ul").height()<=_this.height()){
clearInterval(intId[i]);
}else{
marquee(_this, sh);
}
}, speed);
});
});
}
})(jQuery);
js 实现纵向轮播的更多相关文章
- 用jQuery基于原生js封装的轮播
我发现轮播在很多网站里面都用到过,一个绚丽的轮播可以为网页增色不少,最近闲来无事,也用原生js封装了一个轮播,可能不像网上的插件那么炫,但是也有用心去做.主要用了闭包的思想.需要传递的参数有:图片地址 ...
- jQuery与原生js实现banner轮播图
jQuery与原生js实现banner轮播图: (jq需自己加载)(图片需自己加载) <!DOCTYPE html> <html> <head> <meta ...
- 原生JS实现简易轮播图
原生JS实现简易轮播图(渐变?) 最近做网页总是会用到轮播图,我就把之前写的轮播图单独拿出来吧,如果有...如果真的有人也需要也可以复制去用用啊..哈~.. window.onload = funct ...
- 原生js实现无缝轮播
原生js实现无缝轮播 因为要做到无缝,所以就要把第一张图片和最后一张连接起来,在此处采用js克隆了第一张图片的节点,添加到最后,显示图片序号的小圆按钮也是使用js动态添加的. html部分 <d ...
- 原生js实现图片轮播思路分析
一.复习原生js实现图片轮播 1.要点 自动轮播 点击小圆圈按钮,显示相应图片 点击左右箭头,实现向前向后轮播图片 2.实现思路 <div id="container"> ...
- Bootstrap的js插件之轮播(carousel)
轮播请查看下面演示样例.基本已经涵盖最经常使用的一个轮播 <!DOCTYPE html> <html lang="en"> <head> < ...
- JS+css3焦点轮播图PC端
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- js原生实现轮播图效果(面向对象编程)
面向对象编程js原生实现轮播图效果 1.先看效果图 2.需要实现的功能: 自动轮播 点击左右箭头按钮无缝轮播 点击数字按钮切换图片 分析:如何实现无缝轮播? 在一个固定大小的相框里有一个ul标签,其长 ...
- JS学习笔记--轮播图效果
希望通过自己的学习收获哪怕收获一点点,进步一点点都是值得的,加油吧!!! 本章知识点:index this for if else 下边我分享下通过老师教的方式写的轮播图,基础知识实现: 1.css代 ...
随机推荐
- css导行下拉动画
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...
- css制作旋转风车(transform 篇)
做这个案例之前首先要大概了解CSS的transform的属性 transform 属性向元素应用 2D 或 3D 转换.该属性允许我们对元素进行旋转.缩放.移动或倾斜. 看看效果图 打开的时候自动旋转 ...
- NX二次开发-C++ CopyFile函数的用法
NX9+VS2012 #include<Windows.h> CopyFile("D:\\test.prt","D:\\1\\test123.prt" ...
- 英语影视台词---The Professor
英语影视台词---The Professor 一.总结 一句话总结: brilliant and liberty:厉害且自在 understand and forgive and not care:f ...
- C++实现的B树
参考资料:按第一个参考资料构建,代码基本上来自于第二个参考资料 https://www.cnblogs.com/guohai-stronger/p/9225057.html https://www.c ...
- hexo next主题深度优化(四),自定义一个share功能,share.js。
文章目录 背景: 开始: 引入资源: 代码 关键的一步 附:方便学习的小demo 一次成功后还出现上面的bug 结束 2018.12.23发现bug(读者可忽略) 个人博客:https://mmmmm ...
- (转)python资料汇总(建议收藏)零基础必看
摘要:没料到在悟空问答的回答大受欢迎,为方便朋友,重新整理汇总,内容包括长期必备.入门教程.练手项目.学习视频. 一.长期必备. 1. StackOverflow,是疑难解答.bug排除必备网站,任何 ...
- 4、postman的常见断言
推荐我的另一篇文章 浅谈JSONObject解析JSON数据,这篇文章原理类似,使用java或者beanshell进行断言解析json数据 介绍断言之前,我们先测试1个接口: 接口地址:https: ...
- (c# )操作Excel的时候出现:不能使用对象或链接
可能就是你打开了多个Excel进程没有关掉出现的问题. 编程:对文件操作的时候要养成关掉进程的习惯 在c#中操作完后关闭资源的代入如下: System.Runtime.InteropServices. ...
- Fedora25安装mariadb并设置权限
MariaDB版本10.1.21 Fedora版本25 1.Change root user sudo -i 2. dnf install -y mysql dnf install -y mariad ...