欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jquery實(shí)現(xiàn)marquee效果(文字或者圖片的水平垂直滾動(dòng))

 更新時(shí)間:2013年01月07日 11:44:22   作者:  
原本在前端html代碼中,實(shí)現(xiàn)文字或者圖片的水平垂直滾動(dòng),都是使用的marquee,但隨著考慮瀏覽器的兼容性和符合為w3c的標(biāo)準(zhǔn),接下來介紹使用Jquery實(shí)現(xiàn)網(wǎng)頁marquee效果,感興趣的朋友可以了解下哦
原本在前端html代碼中,實(shí)現(xiàn)文字或者圖片的水平垂直滾定,都是使用的marquee,但隨著考慮瀏覽器的兼容性和符合為w3c的標(biāo)準(zhǔn),后來想想那還是使用javascript代碼來實(shí)現(xiàn)。后來又喜歡上了jquery,下面寫的內(nèi)容希望對初學(xué)者有些幫助,高手勿噴,但歡迎指導(dǎo),感激不盡。

原理:無縫滾動(dòng)的原理,就是利用兩個(gè)內(nèi)容相同的容器,來達(dá)到欺騙人的視覺的效果。然后通過整個(gè)大容器滾動(dòng)條的左右或者上下的移動(dòng)來實(shí)現(xiàn)滾動(dòng)。下面附上一張手繪的圖,來簡要闡述下原理。首先,我們的目的是實(shí)現(xiàn)框1中的內(nèi)容水平向左滾動(dòng)(向右滾動(dòng),上下滾動(dòng)的原理其實(shí)大致是一樣的,只要知道其中一種,其他都不是問題。)。那么我們在頁面加載的時(shí)候就用js動(dòng)態(tài)將框2中的內(nèi)容(html內(nèi)容)賦值成和框1的內(nèi)容一樣。然后隨著滾動(dòng)條的漸漸地往右移動(dòng),來實(shí)現(xiàn)向左的效果。說了這么多。等會(huì)就附上代碼(配有注釋)。
 
1.html代碼
復(fù)制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>juqery實(shí)現(xiàn)marquee的效果</title>
<script src="jquery-1.4.2.js" type="text/javascript"></script>
<style type="text/css">
#container /*這個(gè)是最外面的容器,最關(guān)鍵的一點(diǎn)是將overflow:hidden隱藏起來。*/
{
width:600px;
height:80px;
overflow:hidden;
}
#longwidth
{
height:80px;
width:1000%; /*要足夠的大,需要能夠把div1和div2的內(nèi)容都能夠裝下,不然因?yàn)閒loat:left裝不下,就會(huì)到第二行*/
}
.kuang
{
float:left;
height:80px;
}
</style>
<script type="text/javascript">
$(function () {
$("#div2").html($("#div1").html()); //將div2的html設(shè)置成div1的html
var mar = function () {
if ($("#container").scrollLeft() > $("#div1").width()) { //當(dāng)滾動(dòng)條隱藏的長度大于div1的寬度
$("#container").scrollLeft(0);
}
else {
$("#container").scrollLeft($("#container").scrollLeft() + 5); //每次滾動(dòng)條往右移動(dòng)1px;
}
};
var vid = setInterval(mar, 1);
$("#container").mouseenter(function () {
clearInterval(vid);
}).mouseleave(function () {
vid = setInterval(mar,1);
});
});
</script>
</head>
<body>
<!--容器可以使用div,內(nèi)容中使用ul li,那么框1就是div1,框2就是div2,需要兩個(gè)div在一行,就需要設(shè)置div的float:left屬性-->
<!--當(dāng)然如果你對于css不是很了解,也可以使用table來實(shí)現(xiàn),用td1和td2來實(shí)現(xiàn)。本人對table有種不喜,所以就通過div來做了-->
<div id="container">
<div id="longwidth">
<div id="div1" class="kuang">
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
<img src="04.jpg" width="120px" height="80px" />
</div>
<div id="div2" class="kuang"></div>
</div>
</div>
</body>
</html>

相關(guān)文章

最新評論