js 文本在一行内幻灯显示效果
2009-01-12 20:53
288 查看
<script type="text/javascript"><!--
google_ad_client = "pub-4490194096475053";
/* 内容页,300x250,第一屏 */
google_ad_slot = "3685991503";
google_ad_width = 300;
google_ad_height = 250;
// --></script>
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
程序代码
<div id="marqueeBox"><div>人的头脑太复杂,时间过得久,有时候连自己也被自己骗了,记下来才是最真实的......|最上等的控制是知道何时放手!</div></div>
<script type="text/javascript" src="TextSlide.js"></script>
<script type="text/javascript">
var Mar = new TextSlide("marqueeBox",4000,17);
Mar.init();
</script>
函数解释:
引用内容 引用内容
TextSlide(Objid,Delay,hg,flag)
Objid:要幻灯显示的对象ID;
Delay:切换延迟时间;
hg:显示高度;
flag:可选,显示类型:滚动和淡出两种,默认是滚动;
TextSlide.js代码如下:
程序代码 程序代码
//建立者:QQ:4641856 MSN:yourlips@hotmail.com
//功能:文字幻灯切换,flag可选,默认是滚动。
function TextSlide(Objid,Delay,hg,flag) {
var marqueeObj=document.getElementById(Objid);
var marqueeId=0;
var Opacity=0;//透明度
var Delay; //轮换延迟时间
var hg;//滚动延时
var marqueeText=marqueeObj.childNodes[0].innerHTML;
var marqueeContent=new Array();
var marqueeContent=marqueeText.split("|");
var marqueeInterval=new Array();
var obj=this;
this.init = function () {
var str=marqueeContent[0];
marqueeObj.childNodes[0].innerHTML=str;
marqueeObj.style.display="block";
marqueeObj.style.height=hg+"px";
marqueeId++;
marqueeInterval[0]=setInterval(obj.startMarquee,Delay);
}
marqueeObj.onmouseover=function(){
clearInterval(marqueeInterval[0]);
}
marqueeObj.onmouseout=function(){
marqueeInterval[0]=setInterval(obj.startMarquee,Delay)
}
this.startMarquee=function(){
var str=marqueeContent[marqueeId];
marqueeId++;
if(marqueeId>=marqueeContent.length) marqueeId=0;
if(marqueeObj.childNodes.length==1)
{
var nextLine=document.createElement('DIV');
nextLine.style.height=hg+"px";
nextLine.innerHTML=str;
marqueeObj.appendChild(nextLine);
}
else
{
marqueeObj.childNodes[0].innerHTML=str;
marqueeObj.childNodes[0].style.height=hg+"px";
marqueeObj.appendChild(marqueeObj.childNodes[0]);
marqueeObj.scrollTop=0;
}
clearInterval(marqueeInterval[1]);
if(flag=="Alpha"){
marqueeInterval[1]=setInterval(obj.doAlpha,20);
}
else{
marqueeInterval[1]=setInterval(obj.scrollMarquee,20);
}
}
this.scrollMarquee=function(){
marqueeObj.scrollTop++;
if(marqueeObj.scrollTop%hg==(hg-1)){
clearInterval(marqueeInterval[1]);
}
}
this.doAlpha = function(){
Opacity+=3;
marqueeObj.style.filter = "alpha(opacity="+Opacity+");";
marqueeObj.style.opacity=Opacity/100;
if ((Opacity+=3) > 90){
clearInterval(marqueeInterval[1]);
Opacity=0;
}
}
//class结束
}
google_ad_client = "pub-4490194096475053";
/* 内容页,300x250,第一屏 */
google_ad_slot = "3685991503";
google_ad_width = 300;
google_ad_height = 250;
// --></script>
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
程序代码
<div id="marqueeBox"><div>人的头脑太复杂,时间过得久,有时候连自己也被自己骗了,记下来才是最真实的......|最上等的控制是知道何时放手!</div></div>
<script type="text/javascript" src="TextSlide.js"></script>
<script type="text/javascript">
var Mar = new TextSlide("marqueeBox",4000,17);
Mar.init();
</script>
函数解释:
引用内容 引用内容
TextSlide(Objid,Delay,hg,flag)
Objid:要幻灯显示的对象ID;
Delay:切换延迟时间;
hg:显示高度;
flag:可选,显示类型:滚动和淡出两种,默认是滚动;
TextSlide.js代码如下:
程序代码 程序代码
//建立者:QQ:4641856 MSN:yourlips@hotmail.com
//功能:文字幻灯切换,flag可选,默认是滚动。
function TextSlide(Objid,Delay,hg,flag) {
var marqueeObj=document.getElementById(Objid);
var marqueeId=0;
var Opacity=0;//透明度
var Delay; //轮换延迟时间
var hg;//滚动延时
var marqueeText=marqueeObj.childNodes[0].innerHTML;
var marqueeContent=new Array();
var marqueeContent=marqueeText.split("|");
var marqueeInterval=new Array();
var obj=this;
this.init = function () {
var str=marqueeContent[0];
marqueeObj.childNodes[0].innerHTML=str;
marqueeObj.style.display="block";
marqueeObj.style.height=hg+"px";
marqueeId++;
marqueeInterval[0]=setInterval(obj.startMarquee,Delay);
}
marqueeObj.onmouseover=function(){
clearInterval(marqueeInterval[0]);
}
marqueeObj.onmouseout=function(){
marqueeInterval[0]=setInterval(obj.startMarquee,Delay)
}
this.startMarquee=function(){
var str=marqueeContent[marqueeId];
marqueeId++;
if(marqueeId>=marqueeContent.length) marqueeId=0;
if(marqueeObj.childNodes.length==1)
{
var nextLine=document.createElement('DIV');
nextLine.style.height=hg+"px";
nextLine.innerHTML=str;
marqueeObj.appendChild(nextLine);
}
else
{
marqueeObj.childNodes[0].innerHTML=str;
marqueeObj.childNodes[0].style.height=hg+"px";
marqueeObj.appendChild(marqueeObj.childNodes[0]);
marqueeObj.scrollTop=0;
}
clearInterval(marqueeInterval[1]);
if(flag=="Alpha"){
marqueeInterval[1]=setInterval(obj.doAlpha,20);
}
else{
marqueeInterval[1]=setInterval(obj.scrollMarquee,20);
}
}
this.scrollMarquee=function(){
marqueeObj.scrollTop++;
if(marqueeObj.scrollTop%hg==(hg-1)){
clearInterval(marqueeInterval[1]);
}
}
this.doAlpha = function(){
Opacity+=3;
marqueeObj.style.filter = "alpha(opacity="+Opacity+");";
marqueeObj.style.opacity=Opacity/100;
if ((Opacity+=3) > 90){
clearInterval(marqueeInterval[1]);
Opacity=0;
}
}
//class结束
}
相关文章推荐
- 一个不错的JS效果:文本显示样式切换
- 强制文本在一行内显示,并且后面有省略号效果
- 设置TextView 一行文本显示不同的效果
- Js 网页上反复显示隐藏效果的文本
- Js 网页上反复显示隐藏效果的文本
- 文本多行最后一行溢出隐藏显示省略号
- js纯数字逐一停止显示效果的实现代码
- 遍历显示时一行白色一行灰色效果
- 只 一行显示可左右滚动的文本(UITextField中文限制)
- js手机号4位显示空格,银行卡每4位显示空格效果
- JS实用的带停顿的逐行文本循环滚动效果实例
- 用SpannableString打造绚丽多彩的文本显示效果
- 请写一个简单的幻灯效果页面。如果不使用JS来完成,可以加分。
- 请写一个简单的幻灯效果页面。如果不使用JS来完成,可以加分。
- js行号显示的文本框实现效果(兼容多种浏览器 )
- js实现文本框文本域光标处插入图片文本的插件(并且光标在插入内容的内容后显示)
- JS简单实现tab切换效果的多窗口显示功能
- Android 之TextView文本折叠查看显示更多效果
- js实现的键盘开启大写锁定提示和密码显示与隐藏的效果
- 多行文本超出时显示省略号----jquery.ellipsis.js