色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

jQuery 標題的自動翻轉實現代碼

即一條新聞滾 進視圖之后,會暫停幾秒鐘,然后繼續向上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技術jQuery 標題的自動翻轉實現代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 土默特右旗| 桂东县| 栾川县| 天峻县| 台北县| 弥渡县| 望奎县| 泰来县| 正镶白旗| 尚义县| 郁南县| 西安市| 通河县| 牙克石市| 资源县| 金昌市| 奉贤区| 马山县| 乐山市| 工布江达县| 松溪县| 兰溪市| 大同县| 郑州市| 津南区| 天柱县| 肥东县| 阿城市| 曲阳县| 疏勒县| 武鸣县| 红河县| 铅山县| 大荔县| 迁西县| 辽中县| 华池县| 高尔夫| 徐汇区| 新蔡县| 嘉祥县|