Jquery 设置标题的自动翻转


Posted in Javascript onOctober 03, 2009

即一条新闻滚进视图之后,会暂停几秒钟,然后继续向上2滚动,淡出视图,同时,下一条新闻接着滚入视图。这次主要是用jquery来开发这个功能,里面肯定有许多不足之处,欢迎大家点评。
先粘贴一下代码,

<style> 
<%-- #news-feed 
{ 
padding: 0; 
margin: 0 0 0 10px; 
position: relative; 
height: 200px; 
width: 17em; 
overflow: hidden; 
} 
.headline 
{ 
position: absolute; 
height: 200px; 
top: 210px; 
overflow: hidden; 
}--%> 
</style> 
<script type="text/javascript"> 
$(document).ready(function() { 
$('#news-feed').each(function() { 
var $container = $(this); 
$container.empty(); 
$.get('feed.xml', function(data) { 
$('rss item', data).each(function() { 
var $link = $('<a></a>') 
.attr('href', $('link', this).text()) 
.text($('title', this).text()); 
var $headline = $('<h4></h4>').append($link); 
var pubDate = new Date($('pubDate', this).text()); 
var pubMonth = pubDate.getMonth() + 1; 
var pubDay = pubDate.getDate(); 
var pubYear = pubDate.getFullYear(); 
var $publication = $('<div></div>') 
.addClass('publication-date') 
.text(pubMonth + '/' + pubDay + '/' + pubYear); 
var $summary = $('<div></div>') 
.addClass('summary') 
.html($('description', this).text()); 
$('<div></div>') 
.addClass('headline') 
.append($headline, $publication) 
.appendTo($container); 
}); 
var currentHeadline = 0, oldHeadline = 0; 
var hiddenPosition = $container.height() + 10; 
$('div.headline').eq(currentHeadline).css('top', 0); 
var headlineCount = $('div.headline').length; 
var pause; 
var headlineRotate = function() { 
currentHeadline = (oldHeadline + 1) % headlineCount; 
$('div.headline').eq(oldHeadline).animate( 
{top: -hiddenPosition}, 'slow', function() { 
$(this).css('top', hiddenPosition); 
}); 
$('div.headline').eq(currentHeadline).animate( 
{top: 0}, 'slow', function() { 
pause = setTimeout(headlineRotate, 4000); 
}); 
oldHeadline = currentHeadline; 
}; 
pause = setTimeout(headlineRotate, 4000); 
$container.hover(function() { 
clearTimeout(pause); 
}, function() { 
pause = setTimeout(headlineRotate, 3000); 
}); 
}); 
}); 
}); 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div id="sidebar"> 
<h3>Recent News</h3> 
<div id="news-feed"> 
<a href="###">News Releases</a> 
</div> 
</div> 
</form> 
</body>

我们来庖丁解牛一下这些代码,首先来看样式,因为我们一次只显示一条新闻记录,所以,我们应该把高度也设为一条记录的,在这里设为200px,而且如果超了的话,我们就自动隐藏起来overflow=hidden。在这里,数据源我们用的是feed.xml,Jquery加载并读取xml文件是很简单的,可以参考上面的写法,通过读取xml文件,取出数据,进行组装,就得到了要显示的html代码段并附加到#container中,同时,在滚动显示中,我们需要设置两个变量,一个用于记录当前可见的标题,另一个用于记录刚刚滚动出视图的标题。并且让当前的记录显示在最上方,一定要注意的是,位置不能为static。最后,就是写一个函数,每次自动调用记录的显示。jquery还有很多的插件,可以更加简化这些操作,以后多学习了。如果想学习jquery,个人推荐jquery基础教程,jonathan chaffer编写的,很不错,很适合初学者,国内其他的人写的,里面就鱼龙混杂了。
Javascript 相关文章推荐
Div自动滚动到末尾的代码
Oct 26 Javascript
javascript Array.remove() 数组删除
Aug 06 Javascript
JQuery从头学起第一讲
Jul 04 Javascript
Jquery中删除元素的实现代码
Dec 29 Javascript
JavaScript弹出新窗口并控制窗口移动到指定位置的方法
Apr 06 Javascript
Extjs实现下拉菜单效果
Apr 01 Javascript
jQuery中的on与bind绑定事件区别实例详解
Feb 28 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
Mar 08 Javascript
elementUI Vue 单个按钮显示和隐藏的变换功能(两种方法)
Sep 04 Javascript
如何在wxml中直接写js代码(wxs)
Nov 14 Javascript
微信小程序实现滚动Tab选项卡
Nov 16 Javascript
详解JavaScript中的this指向问题
Feb 05 Javascript
点击下载链接 弹出页面实现代码
Oct 01 #Javascript
点击文章内容处弹出页面代码
Oct 01 #Javascript
js类的静态属性和实例属性的理解
Oct 01 #Javascript
XmlUtils JS操作XML工具类
Oct 01 #Javascript
PPK 谈 JavaScript 的 this 关键字 [翻译]
Sep 29 #Javascript
一个JS小玩意 几个属性相加不能超过一个特定值.
Sep 29 #Javascript
IE FF OPERA都可用的弹出层实现代码
Sep 29 #Javascript
You might like
评分9.0以上的动画电影,剧情除了经典还很燃
2020/03/04 日漫
php 字符过滤类,用于过滤各类用户输入的数据
2009/05/27 PHP
几个有用的php字符串过滤,转换函数代码
2012/05/01 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
jquery实现移动端点击图片查看大图特效
2020/09/11 Javascript
Node.js 实现简单小说爬虫实例
2016/11/18 Javascript
Node+Express+MongoDB实现登录注册功能实例
2017/04/23 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
Python 列表list使用介绍
2014/11/30 Python
介绍Python中的文档测试模块
2015/04/28 Python
详解python单元测试框架unittest
2018/07/02 Python
在cmder下安装ipython以及环境的搭建
2018/10/19 Python
使用python获取电脑的磁盘信息方法
2018/11/01 Python
Django中使用 Closure Table 储存无限分级数据
2019/06/06 Python
Pytorch加载部分预训练模型的参数实例
2019/08/18 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
tensorflow使用指定gpu的方法
2020/02/04 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
2020/06/24 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
python 简单的调用有道翻译
2020/11/25 Python
利用Node实现HTML5离线存储的方法
2020/10/16 HTML / CSS
好家长事迹材料
2014/01/23 职场文书
旅游市场营销方案
2014/03/09 职场文书
党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
2014年青年教师工作总结
2014/12/17 职场文书
拾金不昧表扬稿大全
2015/05/05 职场文书
教学质量月活动总结
2015/05/11 职场文书
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
2021/10/16 Python
如何Tomcat中使用ipv6地址
2022/05/06 Servers
ubuntu下常用apt命令介绍
2022/06/05 Servers