function Addid(preFix,classnumber,classname) //classnumber是不是你要做效果的标签? { switch (classnumber) { case 1: GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);"; //这里设置好了 for (var i=0; i <9;i++) { if (i!=1) GetObj(classname).style.filter = "none"; //这里又把他取消了 } break; case 2: GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);"; for (var i=0; i <9;i++) { if (i!=2) GetObj(classname).style.filter = "none"; } break; } }
我照你的样子改了下但还是不行??没有反应标签
点上去?
另外再提个问题如果我要用javascript改变标签
的背景图片应该怎么写呢?
也就是说被点击的标签改变背景图片,其它的标签
不变?
function Addid(preFix,classnumber,classname) {
switch (classnumber)
{
case 1:
document.getElementById(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);";
for (var i=0; i <9;i++)
{
if (i!=1) document.getElementById(classname).style.filter = "none";
}
break;
case 2:
document.getElementById(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);";
for (var i=0; i <9;i++)
{
if (i!=2) document.getElementById(classname).style.filter = "none";
}
break;
}
}
</script><body >
<div id="topnav" >
<ul >
<li id="news_lbl_0" class="topNo1" onclick="Addid( 'news ',1,this.id)" >
<a >首页 </a > </li >
<li id="news_lbl_1" class="topNo2" onclick="Addid( 'news ',2,this.id)" >
<a >网络学堂 </a > </li >
<li id="news_lbl_2" class="topNo3" >
<a >搜罗天下 </a > </li >
<li id="news_lbl_3" class="topNo4" >
<a >博客 </a > </li >
<li id="news_lbl_4" class="topNo5" >
<a >专栏 </a > </li >
<li id="news_lbl_5" class="topNo6" >
<a >免费广告 </a > </li >
<li id="news_lbl_6" class="topNo7" >
<a >下载专区 </a > </li >
<li id="news_lbl_7" class="topNo8" >
<a >论坛 </a > </li >
</ul >
</div >
</body >
其它的代码我都不写了,和上面的一样的我只
写Addid这个函数里的代码:
<script language="javascript" type="text/javascript">
function Addid(preFix,classnumber,classname)
{
switch (classnumber)
{
case 1:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);";
for (var i=0; i <9;i++)
{
if (i!=1) GetObj(classname).style.filter = "none";
}
break;
case 2:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);";
for (var i=0; i <9;i++)
{
if (i!=2) GetObj(classname).style.filter = "none";
}
break;
}
} -----------------------------------------------------------------
有兴趣的朋友可以试下,把switch语句里的for和if语句都去掉那么剩下的代码如下:
function Addid(preFix,classnumber,classname)
{
switch (classnumber)
{
case 1:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);"; GetObj(classname).style.filter = "none"; break;
case 2:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);"; GetObj(classname).style.filter = "none"; break;
}
}
------------------------------------------------------------------
可以试一下如果需要效果只要将:
GetObj(classname).style.filter = "none";
这句去掉。
不要效果就将这句加上。都正常的但加了一循环和
判断之后就没相应了??不知道是为什么,可能是元
素的ID没有取到,但为什么没有循环和判断之前都
正常呢,都能取到元素的ID呢?????
很简单的这个问题想不到我想了一个上午
还是没办法,只有来CSDN求救罗!!!!!
function Addid(classnumber,classname) {
if(classnumber==1){
document.getElementById(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5)";
}
else if(classnumber==2){
document.getElementById(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5)";
}
}
</script>
<body>
<div id="topnav">
<ul>
<li id="news_lbl_0" class="topNo1" onclick="Addid(1,this.id)"><a>首页 </a> </li>
<li id="news_lbl_1" class="topNo2" onclick="Addid(2,this.id)"><a>网络学堂 </a> </li>
<li id="news_lbl_2" class="topNo3"><a>搜罗天下</a></li>
<li id="news_lbl_3" class="topNo4"><a>博客</a></li>
<li id="news_lbl_4" class="topNo5"><a>专栏</a></li>
<li id="news_lbl_5" class="topNo6"><a>免费广告</a></li>
<li id="news_lbl_6" class="topNo7"><a>下载专区</a></li>
<li id="news_lbl_7" class="topNo8"><a>论坛</a></li>
</ul>
</div>
</body>
{
if (i!=1) GetObj(i).style.filter = "none";
}
for (var i=0; i <9;i++)
{
if (i!=2) GetObj(i).style.filter = "none";
}
就单独循环里换 i ? i有意义吗?
不试就知道不行哦!!help me !!!!!
改成他就没毛病了return eval(document.getElementById(objName));
但是没有效果,你到底要什么效果,还不如直接说个效果,帮忙做了呢
我现在只是想做个TABLE罢了,上面有
几个可点击的分页,用户点哪个分页就
显示哪个分页的内容在下面,然后被点
击的分页高亮,或与其它分页颜色不同
也可以。其它分页的颜色都不变,用户
点另外一个分页时另外没点到的颜色反
回到原来的颜色,被点击者高亮或颜色
变化.
{
switch (classnumber)
{
case 1:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);"; //这里设置好了
for (var i=0; i <9;i++)
{
if (i!=1) GetObj(classname).style.filter = "none"; //这里又把他取消了
}
break;
case 2:
GetObj(classname).style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#333333,Direction=120,strength=5);";
for (var i=0; i <9;i++)
{
if (i!=2) GetObj(classname).style.filter = "none";
}
break;
}
}