js焦點(diǎn)文字滾動(dòng)效果代碼分享
本文實(shí)例講述了js焦點(diǎn)文字滾動(dòng)效果。分享給大家供大家參考。具體如下:
效果描述:
今天推薦的這個(gè)又是一個(gè)原生的js焦點(diǎn)圖效果
默認(rèn)自動(dòng)切換,也可以手動(dòng)切換
javascript代碼采用函數(shù)式對(duì)象編程,也就是javascript編程中的Module模式
基本用法很簡(jiǎn)單,主要特點(diǎn)有三:
1、模塊化,可重用
2、封裝了變量和function,和全局的命名空間不接觸,不污染全局變量
3、只暴露可用public方法,其他私有方法全部隱藏,確保js相互之間不會(huì)沖突
運(yùn)行效果圖:-------------------查看效果-------------------

小提示:瀏覽器中如果不能正常運(yùn)行,可以嘗試切換瀏覽模式。
為大家分享的jQuery下拉美化搜索表單效果代碼如下
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>純js(不依賴現(xiàn)有框架)焦點(diǎn)文字滾動(dòng)效果</title>
<style >
*{margin:0;padding:0; list-style:none;}
#slider{overflow:hidden;width:470px;height:150px;position:relative; margin:100px auto;}
#slider .pics{width:470px;height:150px}
#slider .pics li{height:150px;width:470px;float:left}
#slider #nav {position:absolute;bottom:5px;right:5px;}
#slider #nav li.nav{background:#F47500; color:#fff;}
#slider #nav li{border:1px solid #f47500; color:#d94b01; cursor:pointer;background:#fff;font-size:12px; height:15px;width:15px;float:left;margin-left:4px;display:inline;text-align:center}
</style>
</head>
<body>
<!--代碼部分begin-->
<div id="slider">
<ul class="pics">
<li><img alt="js焦點(diǎn)圖效果" src="images/01.jpg" /></li>
<li><img alt="js焦點(diǎn)圖效果" src="images/02.jpg" /></li>
<li><img alt="js焦點(diǎn)圖效果" src="images/03.jpg" /></li>
<li><img alt="js焦點(diǎn)圖效果" src="images/04.jpg" /></li>
<li><img alt="js焦點(diǎn)圖效果" src="images/05.jpg" /></li>
</ul>
<ul id="nav">
<li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(0)},300)">1</li>
<li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(1)},300)">2</li>
<li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(2)},300)">3</li>
<li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(3)},300)">4</li>
<li onmouseover="setTimeout(function(){lanrenzhijia.slider.pos(4)},300)">5</li>
</ul>
</div>
<script>
var lanrenzhijia = {}, H$ = function(id){return document.getElementById(id)}, H$$ = function(c,p){return p.getElementsByTagName(c)}
lanrenzhijia.slider = function(){
return{
init:function(id,options){
var ul = this.u = H$$('ul',H$(id))[0], li = H$$('li',ul); this.l=li.length; this.index = 0;
if(options.navId&&options.curClass){this.nav = H$$('li',H$(options.navId)), this.c = options.curClass;}
this.a=options.auto||0; this.v=options.vertical||0;H$(id).style.overflow = 'hidden';H$(id).style.position = 'relative';ul.style.position='absolute';
if(this.v){ul.style.top=0; this.h=options.height||li[0].offsetHeight; ul.style.height=(this.l*this.h)+'px';}
else{ul.style.left=0; this.w=options.width||li[0].offsetWidth; ul.style.width=(this.l*this.w)+'px';}
this.pos(options.index||0,this.a?1:0);
},
pos:function(pos,a){
clearInterval(this.u.posAnim); clearInterval(this.u.auto);
var curPos=this.v?parseInt(this.u.style.top):parseInt(this.u.style.left),
correctPos=this.v?pos*this.h:pos*this.w,
direction = correctPos>Math.abs(curPos)?1:-1;
correctPos*=-1;
this.index = pos;
if(this.nav){for(var i=0;i<this.l;i++){this.nav[i].className = i==pos?this.c:''}}
this.u.posAnim = setInterval(function(){lanrenzhijia.slider.anim(correctPos,direction,a)},10);
},
anim:function(des,dir,a){
var curPos=this.v?parseInt(this.u.style.top):parseInt(this.u.style.left);
if(curPos == des){
clearInterval(this.u.posAnim);
if(a||this.a){lanrenzhijia.slider.auto()}
}
else{
var v=curPos-Math.ceil(Math.abs(des-curPos)*.07)*dir+'px';
this.v?this.u.style.top=v:this.u.style.left=v;
}
},
auto:function(){
this.u.auto=setInterval(function(){lanrenzhijia.slider.move(1,1)},this.a*1000)
},
move:function(n,a){
var num=this.index+n, i=n==1?num==this.l?0:num:num<0?this.l-1:num; lanrenzhijia.slider.pos(i,a);
}
};
}();
</script>
<script>
lanrenzhijia.slider.init('slider',{
auto:3,
vertical:1,
navId:'nav',
curClass:'nav',
index:0});
</script>
<!--代碼部分end-->
</body>
</html>以上就是為大家分享的js(不依賴現(xiàn)有框架)焦點(diǎn)文字滾動(dòng)效果代碼,希望大家可以喜歡。
相關(guān)文章
js實(shí)現(xiàn)點(diǎn)擊每個(gè)li節(jié)點(diǎn),都彈出其文本值及修改
本篇文章主要分享了js實(shí)現(xiàn)點(diǎn)擊每個(gè)li節(jié)點(diǎn),都彈出其文本值及修改的實(shí)例代碼,具有很好的參考價(jià)值,需要的朋友一起來(lái)看下吧2016-12-12
JS觸發(fā)事件event.target VS event.currentTarget實(shí)例
這篇文章主要介紹了JS觸發(fā)事件event.target VS event.currentTarget實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
javascript設(shè)計(jì)模式 – 原型模式原理與應(yīng)用實(shí)例分析
這篇文章主要介紹了javascript設(shè)計(jì)模式 – 原型模式,結(jié)合實(shí)例形式分析了javascript原型模式相關(guān)概念、原理、應(yīng)用場(chǎng)景及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04
javascript實(shí)現(xiàn)3D變換的立體圓圈實(shí)例
這篇文章主要介紹了javascript實(shí)現(xiàn)3D變換的立體圓圈效果,涉及javascript動(dòng)態(tài)操作頁(yè)面元素實(shí)現(xiàn)滾動(dòng)與變色的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
JavaScript實(shí)現(xiàn)給定時(shí)間相加天數(shù)的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)給定時(shí)間相加天數(shù)的方法,涉及JavaScript針對(duì)日期與時(shí)間操作相關(guān)技巧,需要的朋友可以參考下2016-01-01
JS函數(shù)驗(yàn)證總結(jié)(方便js客戶端輸入驗(yàn)證)
JS函數(shù)驗(yàn)證總結(jié),都是一些基礎(chǔ)的東西,現(xiàn)在比較流行jquery了,不過(guò)這些東西仍然需要大家會(huì)。2010-10-10
js實(shí)現(xiàn)鼠標(biāo)經(jīng)過(guò)時(shí)圖片滾動(dòng)停止的方法
這篇文章主要介紹了js實(shí)現(xiàn)鼠標(biāo)經(jīng)過(guò)時(shí)圖片滾動(dòng)停止的方法,可實(shí)現(xiàn)js滾動(dòng)特效中的鼠標(biāo)懸停停止圖片滾動(dòng)的功能,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02

