js函数带参调用
从来没学过js,但是偶然看到这个代码很好奇,这个函数的text文字是预先设定的。我想多次调用这个函数,每次让他显示的东西是不一样的。我感觉是让这个函数带参,然后调用的时候...
从来没学过js,但是偶然看到这个代码很好奇,这个函数的text文字是预先设定的。我想多次调用这个函数,每次让他显示的东西是不一样的。我感觉是让这个函数带参,然后调用的时候修改参数,但是不会弄,求指点。我想实现的大概是这种功能,但是具体该怎么改
function scrollit(text)
{……}
scrollit("output1");
scrollit("output2");
<!DOCTYPE HTML>
<html>
<body>
<span id="demo"></span>
<script defer>
var text="dffasdfasdfadsfadsfdaf;klsjdf;lkajsdf'alskdjf'asdlf" //预定文字
var delay=200 //文字出现的时间间隔
var i=0 //初始化变量 i
function scrollit(){
//设置 id 为 demo 的对象内的文字为从变量 text 的 0 开始到 i 间的文字加"_"
demo.innerText=text.slice(0,i++)+"_"
if(i>text.length){ //当 i 大于 text 的文本长度时
i=0 //重设 i 为 0,使文字重新从第一个文字出现
//延时执行scrollit()函数,delay*10是为了让显示完整文字的时间长一点
setTimeout("scrollit()",delay*10)
}
//否则在delay毫秒后再次执行scrollit()函数
else setTimeout("scrollit()",delay)
}
scrollit()//调用scrollit()函数
</script>
</body>
</html> 展开
function scrollit(text)
{……}
scrollit("output1");
scrollit("output2");
<!DOCTYPE HTML>
<html>
<body>
<span id="demo"></span>
<script defer>
var text="dffasdfasdfadsfadsfdaf;klsjdf;lkajsdf'alskdjf'asdlf" //预定文字
var delay=200 //文字出现的时间间隔
var i=0 //初始化变量 i
function scrollit(){
//设置 id 为 demo 的对象内的文字为从变量 text 的 0 开始到 i 间的文字加"_"
demo.innerText=text.slice(0,i++)+"_"
if(i>text.length){ //当 i 大于 text 的文本长度时
i=0 //重设 i 为 0,使文字重新从第一个文字出现
//延时执行scrollit()函数,delay*10是为了让显示完整文字的时间长一点
setTimeout("scrollit()",delay*10)
}
//否则在delay毫秒后再次执行scrollit()函数
else setTimeout("scrollit()",delay)
}
scrollit()//调用scrollit()函数
</script>
</body>
</html> 展开
4个回答
展开全部
<span id="demo"></span>
<script>
var text="dffasdfasdfadsfadsfdaf;klsjdf;lkajsdf'alskdjf'asdlf"; //预定文字
var delay=200; //文字出现的时间间隔
var i=0 ; //初始化变量 i
function scrollit(){
//设置 id 为 demo 的对象内的文字为从变量 text 的 0 开始到 i 间的文字加"_"
document.getElementById('demo').innerHTML=text.slice(0,i++)+"_";
if(i>text.length){ //当 i 大于 text 的文本长度时
i=0; //重设 i 为 0,使文字重新从第一个文字出现
//延时执行scrollit()函数,delay*10是为了让显示完整文字的时间长一点
setTimeout("scrollit()",delay*10);
}
//否则在delay毫秒后再次执行scrollit()函数
else setTimeout("scrollit()",delay);
}
scrollit();//调用scrollit()函数
</script>
<script>
var text="dffasdfasdfadsfadsfdaf;klsjdf;lkajsdf'alskdjf'asdlf"; //预定文字
var delay=200; //文字出现的时间间隔
var i=0 ; //初始化变量 i
function scrollit(){
//设置 id 为 demo 的对象内的文字为从变量 text 的 0 开始到 i 间的文字加"_"
document.getElementById('demo').innerHTML=text.slice(0,i++)+"_";
if(i>text.length){ //当 i 大于 text 的文本长度时
i=0; //重设 i 为 0,使文字重新从第一个文字出现
//延时执行scrollit()函数,delay*10是为了让显示完整文字的时间长一点
setTimeout("scrollit()",delay*10);
}
//否则在delay毫秒后再次执行scrollit()函数
else setTimeout("scrollit()",delay);
}
scrollit();//调用scrollit()函数
</script>
来自:求助得到的回答
展开全部
通过传入自己需要的参数调用该函数就可以了。
1、定义一个带参数的函数
function kk(a){//定义一个函数kk,带参数a
}
2、调用该函数
<script>
kk('1');//传入字符串1,调用带参函数kk
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个代码是打字机效果,一般在同一页面中多次实现时,并不利用客户的体验,所以一般存在这处效果的时候,只需要一个就可以了!所以不建议你多次调用。
如果想改写这个代码,那只须要增加新要调用的文字,和相应的层即可。
如果想改写这个代码,那只须要增加新要调用的文字,和相应的层即可。
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看是不是你要的效果
<div id="demo"></div>
<script type="text/javascript">
function scrollit(text){
var delay = 200;
var i = 0;
demo.innerText=text
if(i>text.length){
i = 0;
setTimeout("scrollit('" + text + "')",delay*10)
}
else {setTimeout("scrollit('" + text + "')",delay)}
}
scrollit('i love javascript')
</script>
<div id="demo"></div>
<script type="text/javascript">
function scrollit(text){
var delay = 200;
var i = 0;
demo.innerText=text
if(i>text.length){
i = 0;
setTimeout("scrollit('" + text + "')",delay*10)
}
else {setTimeout("scrollit('" + text + "')",delay)}
}
scrollit('i love javascript')
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询