龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

兼容Ie6、7、8,FF以及谷歌浏览器文字向上滚动代码

时间:2012-12-29 08:41来源:未知 作者:admin 点击:
分享到:
本文章收藏了几款不错的兼容Ie6、7、8,FF以及谷歌浏览器文字向上滚动代码,有需要学习的朋友可参考一下。 代码如下 script type=text/javascript function scrollOneStep(obj) { var ul = document.getEle
本文章收藏了几款不错的兼容Ie6、7、8,FF以及谷歌浏览器文字向上滚动代码,有需要学习的朋友可参考一下。
 代码如下

<script type="text/javascript">
function scrollOneStep(obj)
{
var ul = document.getElementById(obj);
var li = ul.getElementsByTagName("li");
var li_move = li.item(0);
var line = 0 - parseInt(li_move.clientHeight);
var speed = 10;
var pix = 0;
t2 = setInterval(function(){
if(pix > line){
ul.style.top = ""+pix + "px";
pix --;
}else{
clearInterval(t2);
}
},speed);

ul.style.top += parseInt(ul.style.top)+30+"px";

ul.removeChild(li_move);
ul.appendChild(li_move);
ul.style.top = "0"

}

function scroll(obj)
{
var t= setInterval(function(){scrollOneStep(obj);},1000);
}
</script>

在本例中如果需要单行滚动,只需要把css中#div1的值改为18即可。

注:经测试兼容Ie6、7、8,FF以及谷歌浏览器!

 

 代码如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>新闻列表单行滚动js效果,者多行滚动js效果,超简洁</title>
<style>
a{display:block;line-height:18px;text-decoration:none;color:#f00;font-family:Arial;font-size:12px;}
a:hover{text-decoration:underline;}
.shell{width:220px; }
#div1{height:72px;overflow:hidden;}
</style>
</head>
<body>
<div class="shell">
 <div id="div1">
   <a href="/js">1jQuery的图片滚动切换插件</a>
   <a href="/js">2Mootools slider 滚动条拖动取值的实现 </a>
   <a href="/js">3VB开发的Eclipse编程软件完整版</a>
   <a href="/js">4VC++生成随机数并快速排序的算法</a>
   <a href="/js">5VB语音报数计算器源程序</a>
   <a href="/js">6jQuery的图片滚动切换插件</a>
   <a href="/js">7Mootools slider 滚动条拖动取值的实现 </a>
   <a href="/js">8VB开发的Eclipse编程软件完整版</a>
   <a href="/js">9VC++生成随机数并快速排序的算法</a>
 </div>
<div>
<p>修改说明:#div1里的高度(72px)即是你需要显示的行数<br/>
js里的18即是要滚动的行高;1500即是每次滚动所需要的时间,越大则速度越慢!
<a href="/js">Js大全</a>注!<p/>
</body>
<script>
var c,_=Function;
with(o=document.getElementById("div1")){ innerHTML+=innerHTML; onmouseover=_("c=1"); onmouseout=_("c=0");}
(F=_("if(#%18||!c)#++,#%=o.scrollHeight>>1;setTimeout(F,#%18?10:1500);".replace(/#/g,"o.scrollTop")))();
</script>
</html>

本效果是完全基于JavaScript的,使用时候最好另存一个新文件,然后引入,这样方便一些。

 代码如下

<html>
<head>
<title>文字滚动</title>
<style type="text/css">
body{font-size:12px}
a {text-decoration: none;}
</style>
</head>
<body>
<script>
var marqueeContent=new Array();
marqueeContent[0]='<font color="#0000CC">14:25 </font><a href=http://www.baidu.com target=_blank class="f12red">jQuery 动态加载静态网页的实例</a><br>';
marqueeContent[1]='<font color="#0000CC">14:25 </font><a href=/ target=_blank class="f12red">比较炫的JavaScript图片展示特效</a><br>';
marqueeContent[2]='<font color="#0000CC">14:25 </font><a href=# target=_blank class="f12red">JQuery模仿的LightBox图片效果</a><br>';
marqueeContent[3]='<font color="#0000CC">14:25 </font><a href=# target=_blank class="f12red">C#酒店管理系统(VS2008+SQL2005)</a><br>';
var marqueeInterval=new Array();
var marqueeId=0;
var marqueeDelay=2000;
var marqueeHeight=18;
function initMarquee() {
    var str=marqueeContent[0];
    document.write('<div id=marqueeBox style="overflow:hidden;height:'+marqueeHeight+'px" onmouseover="clearInterval(marqueeInterval[0])" onmouseout="marqueeInterval[0]=setInterval('startMarquee()',marqueeDelay)"><div>'+str+'</div></div>');
    marqueeId++;
    marqueeInterval[0]=setInterval("startMarquee()",marqueeDelay);
    }
function startMarquee() {
    var str=marqueeContent[marqueeId];
        marqueeId++;
    if(marqueeId>=marqueeContent.length) marqueeId=0;
    if(marqueeBox.childNodes.length==1) {
        var nextLine=document.createElement('DIV');
        nextLine.innerHTML=str;
        marqueeBox.appendChild(nextLine);
        }
    else {
        marqueeBox.childNodes[0].innerHTML=str;
        marqueeBox.appendChild(marqueeBox.childNodes[0]);
        marqueeBox.scrollTop=0;
        }
    clearInterval(marqueeInterval[1]);
    marqueeInterval[1]=setInterval("scrollMarquee()",20);
    }
function scrollMarquee() {
    marqueeBox.scrollTop++;
    if(marqueeBox.scrollTop%marqueeHeight==(marqueeHeight-1)){
        clearInterval(marqueeInterval[1]);
        }
    }
initMarquee();
</script>
</body>
</html>


精彩图集

赞助商链接