国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

jQuery不間斷滾動效果(模擬百度新聞支持文字/圖片/垂直滾動)

2024-05-06 14:19:41
字體:
來源:轉載
供稿:網友
一、jQuery.roll 插件使用說明
jQuery.roll 是模擬百度新聞不間斷滾動效果,并支持文字、圖片水平垂直滾動,該函數使用方法為:
代碼如下:
/*
* @module jQuery roll
* @param: contentCls 內容容器className
* @param: contentParentId 內容容器父元素節點ID
* @param: configs 配置參數
*
* @config: effect 滾動效果
* @config: duration 滾動1個像素的運行時間(毫秒數)
* @config: delay 開始滾動的延遲時間(毫秒數)
*
*/
jQuery.roll(contentCls, contentParentId, configs);

二、函數源碼
代碼如下:
jQuery.extend({
roll: function(contentCls, contentParentId, configs){
var setTimeID, totalWidth = 0, totalHeight = 0,
firstContent, secondContent, contents;
(function(){
var singleContent, cloneContent, nodeList;
singleContent = $(contentCls, contentParentId);
nodeList = singleContent.children();
if (configs.effect === 'scrollX') {
$.each(nodeList, function(idx, itm) {
totalWidth += $(itm).outerWidth(true);
});
singleContent.css({ 'width': totalWidth + 'px' });
}
else if (configs.effect === 'scrollY') {
$.each(nodeList, function(idx, itm) {
totalHeight += $(itm).outerHeight(true);
});
singleContent.css({ 'height': totalHeight + 'px' });
}
cloneContent = singleContent.clone();
cloneContent.appendTo(contentParentId);
contents = $(contentCls, contentParentId);
firstContent = contents[0];
secondContent = contents[1];
if (configs.effect === 'scrollX') {
$(firstContent).css({ 'left': 0 });
$(secondContent).css({ 'left': totalWidth + 'px' });
}
else if (configs.effect === 'scrollY') {
$(firstContent).css({ 'top': 0 });
$(secondContent).css({ 'top': totalHeight + 'px' });
}
})()
function cssAnimate(){
if (configs.effect === 'scrollX') {
$(firstContent).css({ left: parseInt(firstContent.style.left, 10) - 1 + 'px' });
$(secondContent).css({ left: parseInt(secondContent.style.left, 10) - 1 + 'px' });
$.each(contents, function(idx, itm) {
if (parseInt(itm.style.left,10) === -totalWidth) {
$(itm).css({ left: totalWidth + 'px' });
}
});
}
else if (configs.effect === 'scrollY') {
$(firstContent).css({ top: parseInt(firstContent.style.top, 10) - 1 + 'px' });
$(secondContent).css({ top: parseInt(secondContent.style.top, 10) - 1 + 'px' });
$.each(contents, function(idx, itm) {
if (parseInt(itm.style.top,10) === -totalHeight) {
$(itm).css({ top: totalHeight + 'px' });
}
});
}
setTimeId = setTimeout(cssAnimate, configs.duration);
}
function rollRun(){
setTimeId = setTimeout(cssAnimate, configs.delay);
return jQuery;
}
function rollStop(){
clearTimeout(setTimeId);
return jQuery;
}
return $.extend({
rollRun: rollRun,
rollStop: rollStop
});
}
});

三、完整demo源碼
例3.1
代碼如下:
<!DOCTYPE html>
<html>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 岳阳市| 双流县| 普陀区| 元江| 会同县| 清远市| 花莲县| 汕头市| 灵石县| 咸丰县| 达尔| 四子王旗| 宜丰县| 江陵县| 清远市| 武义县| 名山县| 黄龙县| 铜川市| 揭东县| 盐山县| 瓮安县| 南昌县| 观塘区| 海兴县| 岫岩| 和田县| 阳新县| 正蓝旗| 信阳市| 竹山县| 潮安县| 长寿区| 垣曲县| 星子县| 文安县| 丰顺县| 彰化县| 会昌县| 巴塘县| 临西县|