javascript中关于“ ”(双引号中间一个空格)的问题。
代码:<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtm...
代码:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var timerid;
var str="欢迎光临";
var addstr=" ";
var inum=1;
var bool=true;
function movechar(){
var space="";
if(inum>0){
if(inum<31&&bool){inum=1+inum;bool=true;}
else{inum=-1+inum;bool=false;}
}
else{inum+=1;bool=true;}
for(var i=1;i<inum;i++)space+=" ";
document.getElementById("p1").firstChild.nodeValue=space+str;
window.status=space+str;
}
function startmoving(){
timerid=setInterval("movechar();",100);
}
function stopmoving(){
clearInterval(timerid);
}
</script>
</head>
<body>
<p id="p1"width="600">a</p>
<form><input type="button"value="开始滚动字符串"onclick="startmoving();" /><br />
<input type="button"value="停止滚动字符串"onclick="stopmoving();" /></form>
<p>a ad</p>
</body>
</html>
IE中运行上面代码,会发现,IE底部的status栏里的 “欢迎光临” 在左右移动,而文档<BODY>里的 “欢迎光临” 没有左右移动。
这是为什么?都是用 space+str 赋的值啊。
我把:for(var i=1;i<inum;i++)space+=" ";
换为:for(var i=1;i<inum;i++)space+=" ";
status和<body>
都在重复打印 字符串,html里怎么不打印空格?
最后,要实现<body>里和status里同样的效果,要怎么弄?
谢谢所有回答问题的人,祝大家新年快乐!
还有,我没分了,怎么弄?是不是不能提问题了?
我把:for(var i=1;i<inum;i++)space+=" ";
换为:for(var i=1;i<inum;i++)space+=" ";
status和<body>都在重复打印 字符串 ,html里怎么不打印空格? 展开
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var timerid;
var str="欢迎光临";
var addstr=" ";
var inum=1;
var bool=true;
function movechar(){
var space="";
if(inum>0){
if(inum<31&&bool){inum=1+inum;bool=true;}
else{inum=-1+inum;bool=false;}
}
else{inum+=1;bool=true;}
for(var i=1;i<inum;i++)space+=" ";
document.getElementById("p1").firstChild.nodeValue=space+str;
window.status=space+str;
}
function startmoving(){
timerid=setInterval("movechar();",100);
}
function stopmoving(){
clearInterval(timerid);
}
</script>
</head>
<body>
<p id="p1"width="600">a</p>
<form><input type="button"value="开始滚动字符串"onclick="startmoving();" /><br />
<input type="button"value="停止滚动字符串"onclick="stopmoving();" /></form>
<p>a ad</p>
</body>
</html>
IE中运行上面代码,会发现,IE底部的status栏里的 “欢迎光临” 在左右移动,而文档<BODY>里的 “欢迎光临” 没有左右移动。
这是为什么?都是用 space+str 赋的值啊。
我把:for(var i=1;i<inum;i++)space+=" ";
换为:for(var i=1;i<inum;i++)space+=" ";
status和<body>
都在重复打印 字符串,html里怎么不打印空格?
最后,要实现<body>里和status里同样的效果,要怎么弄?
谢谢所有回答问题的人,祝大家新年快乐!
还有,我没分了,怎么弄?是不是不能提问题了?
我把:for(var i=1;i<inum;i++)space+=" ";
换为:for(var i=1;i<inum;i++)space+=" ";
status和<body>都在重复打印 字符串 ,html里怎么不打印空格? 展开
3个回答
展开全部
代码换成这个即可
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var timerid;
var str="欢迎光临";
var addstr=" ";
var inum=1;
var bool=true;
function movechar(){
var space="";
if(inum>0){
if(inum<31&&bool){inum=1+inum;bool=true;}
else{inum=-1+inum;bool=false;}
}
else{inum+=1;bool=true;}
for(var i=1;i<inum;i++)space+=" ";
document.getElementById("p1").innerText=space+str;
window.status=space+str;
}
function startmoving(){
timerid=setInterval("movechar();",100);
}
function stopmoving(){
clearInterval(timerid);
}
</script>
</head>
<body>
<p id="p1"width="600">a</p>
<form><input type="button"value="开始滚动字符串"onclick="startmoving();" /><br />
<input type="button"value="停止滚动字符串"onclick="stopmoving();" /></form>
<p>a ad</p>
</body>
</html>
document.getElementById("p1").firstChild.nodeValue=space+str;
替换为document.getElementById("p1").innerText=space+str;
没有分你可以回答别人的问题就可以有积分了。
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var timerid;
var str="欢迎光临";
var addstr=" ";
var inum=1;
var bool=true;
function movechar(){
var space="";
if(inum>0){
if(inum<31&&bool){inum=1+inum;bool=true;}
else{inum=-1+inum;bool=false;}
}
else{inum+=1;bool=true;}
for(var i=1;i<inum;i++)space+=" ";
document.getElementById("p1").innerText=space+str;
window.status=space+str;
}
function startmoving(){
timerid=setInterval("movechar();",100);
}
function stopmoving(){
clearInterval(timerid);
}
</script>
</head>
<body>
<p id="p1"width="600">a</p>
<form><input type="button"value="开始滚动字符串"onclick="startmoving();" /><br />
<input type="button"value="停止滚动字符串"onclick="stopmoving();" /></form>
<p>a ad</p>
</body>
</html>
document.getElementById("p1").firstChild.nodeValue=space+str;
替换为document.getElementById("p1").innerText=space+str;
没有分你可以回答别人的问题就可以有积分了。
展开全部
nodeValue是DOM写法,是用的xml的语法,所以前后空格都会被处理,一楼的方法其实就是避开了这个问题,也是可以的.
for(var i=1;i<inum;i++)space+=" \t";body部分就可以了,但status就不行了,但我想status部分不是问题的重点
for(var i=1;i<inum;i++)space+=" \t";body部分就可以了,但status就不行了,但我想status部分不是问题的重点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var str = "abc123\"双引号\'单引号";
if (/(?:\"|\')/.test(str)) {
alert("含有双引号或单引号");
}
if (/(?:\"|\')/.test(str)) {
alert("含有双引号或单引号");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询