插件代码

;(function ($) {

    // jQuery marquee 插件
$.fn.marquee = function (options) {
// 默认设置
var defaults = {
derection: "top",
interval: 50
}; // 合并后的参数设置
var options = $.extend(defaults, options); var $mar = $(this),
original = $mar.children().first(),
clone = original.clone(),
height = original.height(),
width = original.width(),
i = 0,
tId = null; // 唯一的tId,可以通过clearTimeout(tId)清除干净 // append clone to marquee
$mar.append(clone); // scrolltop
var scrolltop = function () { if (i < height) {
$mar.scrollTop(i++);
} else {
i = 0;
$mar.scrollTop(0);
} tId = setTimeout(scrolltop, options.interval);
}; // scrollbottom
var scrollbottom = function () { if (i === 0) {
i = height;
$mar.scrollTop(i);
} else {
$mar.scrollTop(i--);
} tId = setTimeout(scrollbottom, options.interval);
}; // scrollleft
var scrollleft = function () { if (i < width) {
$mar.scrollLeft(i++)
} else {
i = 0;
$mar.scrollLeft(0);
} tId = setTimeout(scrollleft, options.interval);
}; // scrollright
var scrollright = function () { if (i === 0) {
$mar.scrollLeft(width);
i = width;
} else {
$mar.scrollLeft(i--);
} tId = setTimeout(scrollright, options.interval);
}; // scroll to which derection
var scrollto = {
top: scrolltop,
bottom: scrollbottom,
left: scrollleft,
right: scrollright
}; // 根据参数选择滚动函数
tId = setTimeout(scrollto[options.derection], options.interval); // when mouse hover clearTimeout or setTimeout
$mar.hover(function () {
clearTimeout(tId);
}, function () {
tId = setTimeout(scrollto[options.derection], options.interval);
});
};
})(jQuery);

示例一:上滚动(默认)

<!-- html code -->
<div class="marquee">
<ul>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
</ul>
</div>
/*  css code  */
.marquee{
border:1px solid #0a0;
width:300px;
height:100px;
overflow:hidden;
}
.marquee li{
font-size:16px;
line-height:1.5;
}
// js code:插件应用
$(".marquee").marquee();

示例二:左滚动

<!-- html code -->
<div class="marquee2">
<ul>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
<li>滚动吧少年</li>
</ul>
</div>
/* css code */
.marquee2{
width:300px;
height:25px;
border:1px solid #00a;
overflow:hidden;
white-space: nowrap; /* 文字超出时不换行!! */
}
.marquee2 ul, .marquee2 li{
display:inline;
font-size:16px;
line-height:25px;
}
// js code:插件应用
$(".marquee2").marquee({derection: "left", interval: 25});

jQuery无缝滚动插件的更多相关文章

  1. liMarquee – jQuery无缝滚动插件(制作跑马灯效果)

    liMarquee 是一款基于 jQuery 的无缝滚动插件,类似于 HTML 的 marquee 标签,但比 marquee 更强大.它可以应用于任何 Web 元素,包括文字.图像.表格.表单等元素 ...

  2. 利用jQuery无缝滚动插件liMarquee实现图片(链接)和文字(链接)向右无缝滚动(兼容ie7+)

    像新闻类的版块经常要求一条条的新闻滚动出现,要实现这种效果,可以使用jQuery无缝滚动插件liMarquee. 注意: 1. 它的兼容性是IE7+,及现代浏览器. 2. 引用的jquery的版本最好 ...

  3. 【精心推荐】12款很好用的 jQuery 图片滚动插件

    这里收集了12款很好用的 jQuery 图片滚动插件分享给大家.jQuery 作为最流行的 JavaScript 框架,使用简单灵活,同时还有许多优秀的插件可供使用.其中最令人印象深刻的应用之一就是各 ...

  4. Flexslider - 响应式的 jQuery 内容滚动插件

    FlexSlider 是一款轻量的响应式 jQuery 内容滚动插件,能够帮助你在项目轻松的创建漂亮的内容滚动效果.这款插件曾经连续多年入选 WDL 的年度最佳 jQuery 插件,值得大家在网站开发 ...

  5. 10款很好用的 jQuery 图片滚动插件

    jQuery 作为最流行的 JavaScript 框架,使用简单灵活,同时还有许多优秀的插件可供使用.其中最令人印象深刻的应用之一就是各种很酷的图片效果,它可以让的网站更具吸引力.这里收集了10款很好 ...

  6. 手写JS无缝滚动插件

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  7. (转)15个非常棒的jQuery无限滚动插件【瀑布流效果】

    原文地址:http://www.cnblogs.com/lyw0301/archive/2013/06/19/3145084.html 现在,最热门的网站分页趋势之一是jQuery的无限滚动(也即瀑布 ...

  8. 15个非常棒的jQuery无限滚动插件【瀑布流效果】

    现在,最热门的网站分页趋势之一是jQuery的无限滚动(也即瀑布流).如果你碰巧观察Pinterest的网站,如Facebook,Twitter和deviantART的,你会发现无限滚动的动作,当旧的 ...

  9. 一款经典的jQuery kxbdMarquee 无缝滚动插件

    <marquee> 曾是 IE 下独有的一个走马灯效果的标签,其他浏览器并不兼容,于是出现了使用 JavaScript 来模拟该效果的插件. 版本: jQuery v1.3.2+ 在线实例 ...

随机推荐

  1. MFC读取XML文件并解析

    现在经常会对XML文件进行操作,怎么在MFC下去读和解析XML文件呢?直接上代码: 首先得等在stdafx.h中加入这句,以引入MSXML命名空间 #import <msxml3.dll> ...

  2. svn 检出代码报ssl错误问题的解决

    svn: OPTIONS of 'https://192.168.11.185/svn/ahwater-cloud': SSL handshake failed: SSL error: Key usa ...

  3. ENVI二次开发模式下的Landsat数据读取

    从usgs网站或者马里兰大学下载TM或Landsat原始数据,数据可能包括9个tif数据,两个txt文件和一个gtf文件.示例结构如下: ENVI下可以直接打开*_MTL.txt文件打开,打开后波段列 ...

  4. 获取本地IP地址信息

    2012-06-05    /// <summary>         /// 获取本地IP地址信息         /// </summary>         void G ...

  5. Glassfish数据源配置详解

    本文环境: Win2003 + myeclipse6.01 + sqlserver2000(sp4) 1. 安装glassfish——启动,在管理控制台下配置如下 首先配置连接池——大家把sqlser ...

  6. (笔记)angular material 选项卡用法

  7. leetcode 66

    66. Plus One Given a non-negative number represented as an array of digits, plus one to the number. ...

  8. Min Stack [LeetCode 155]

    1- 问题描述 Design a stack that supports push, pop, top, and retrieving the minimum element in constant ...

  9. 旅游风景展示应用源码iPad版

    一款iPad旅游风景展示应用源码,一款iPad旅游景区展示应用.效果很炫,左右可以以书本的效果进行翻页,双击左边显示该风景区的信息,双击右边可以显示该风景区的地理位置.<ignore_js_op ...

  10. Cassandra 计数器counter类型和它的限制

    文档基础 Cassandra 2.* CQL3.1 翻译多数来自这个文档 更新于2015年9月7日,最后有参考资料 作为Cassandra的一种类型之一,Counter类型算是限制最多的一个.Coun ...