标题:大家好,新人问题,希望老鸟指点迷津,谢谢
只看楼主
shiguang112
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2017-5-5
结帖率:0
已结贴  问题点数:20 回复次数:4 
大家好,新人问题,希望老鸟指点迷津,谢谢
老鸟们好:

我是新鸟刚刚接触JS,看到网上一个图片滚动的JS其中有几个问题始终想不明白,还请有经验的老鸟指点,谢谢。
程序如下:
<html>
<head>

</head>
<body>
<style type="text/css">
<!--
#demo {
background: #FFF;
overflow:hidden;
border: 1px dashed #CCC;
width: 500px;
}
#demo img {
border: 3px solid #F2F2F2;
}
#indemo {
float: left;
width: 800%;
}
#demo1 {
float: left;
}
#demo2 {
float: left;
}
-->
</style>
<div id="demo">
<div id="indemo">
<div id="demo1">
<a href="#"><img src="/jscss/demoimg/wall_s1.jpg" border="0" /></a>
<a href="#"><img src="/jscss/demoimg/wall_s2.jpg" border="0" /></a>
<a href="#"><img src="/jscss/demoimg/wall_s3.jpg" border="0" /></a>
<a href="#"><img src="/jscss/demoimg/wall_s4.jpg" border="0" /></a>
<a href="#"><img src="/jscss/demoimg/wall_s5.jpg" border="0" /></a>
<a href="#"><img src="/jscss/demoimg/wall_s6.jpg" border="0" /></a>
</div>
<div id="demo2"></div>
</div>
</div>
<script>
<!--
var speed=10;
var tab=document.getElementById("demo");
var tab1=document.getElementById("demo1");
var tab2=document.getElementById("demo2");
tab2.innerHTML=tab1.innerHTML;
function Marquee(){
if(tab2.offsetWidth-tab.scrollLeft<=0)
tab.scrollLeft-=tab1.offsetWidth
else{
tab.scrollLeft++;
}
}
var MyMar=setInterval(Marquee,speed);
tab.onmouseover=function() {clearInterval(MyMar)};
tab.onmouseout=function() {MyMar=setInterval(Marquee,speed)};
-->
</script>
</body>
</html>

请问下面tab,tab1,tab2取得是什么值啊?tab取的是width500px的区域么?tab1和tab2呢?取得是六个图片加在一起的区域么?
var tab=document.getElementById("demo");
var tab1=document.getElementById("demo1");
var tab2=document.getElementById("demo2");
搜索更多相关主题的帖子: background border hidden style 图片 
2017-05-06 10:04
凌风zx
Rank: 8Rank: 8
来 自:万灵娱乐城
等 级:蝙蝠侠
威 望:7
帖 子:88
专家分:790
注 册:2015-4-11
得分:20 
这里取的是div这个元素,不能说是某块区域

取到后可以对这个元素做一些操作

例如:修改它包含的内容tab1.innerHTML="<a href="#"><img src="/jscss/demoimg/wall_s1.jpg" border="0" /></a> ";
让他只包含一个图片

也可修改他的属性:例如 tab1.height="100px";

初出茅庐
2017-05-06 13:41
shiguang112
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2017-5-5
得分:0 
大侠,那就是说如果我定义了一个demo
#demo{width:500px}
然后建立图层在其中调用demo模式后加入两个图片
<div id="demo">
<img src="/jscss/demoimg/wall_s1.jpg" border="0" />
<img src="/jscss/demoimg/wall_s2.jpg" border="0" />
</div>
之后我用getElementById提取元素
var tab=document.getElementById("demo");
请问这时tab提取的是demo{width:500px}还是这两个图片。。。
有什么方法或命令可以显示tab提取的值么?
2017-05-06 14:18
凌风zx
Rank: 8Rank: 8
来 自:万灵娱乐城
等 级:蝙蝠侠
威 望:7
帖 子:88
专家分:790
注 册:2015-4-11
得分:0 
既不是demo  也不是图片

#demo{width:500px}:这叫样式,也就是css
 tab取到的是id叫demo的元素,也就是这里的div
即:
<div id="demo">
<img src="/jscss/demoimg/wall_s1.jpg" border="0" />
<img src="/jscss/demoimg/wall_s2.jpg" border="0" />
</div>

如果我随便定义一个元素如<input id='demo'/> 那取得就是input了

看的方式有很多,你可以在浏览器按f12打开控制台,打个断点
或者直接在js里用debugger加断点
或者直接console.log(tab)(ie可能不支持)浏览器输出输出查看




初出茅庐
2017-05-06 15:47
shiguang112
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2017-5-5
得分:0 
感谢,大侠,大侠一席话,我茅塞顿开。
2017-05-07 12:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-476738-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.068338 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved