开发者社区> 问答> 正文

JS有参函数的简单问题,诚心求解

TYPE 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=utf-8" />
<title>无标题文档</title>
<style type="text/css">
*{margin:0; padding:0;}
.abc{width:720px; height:450px; margin:0 auto; 
     position:relative; left:0; top:0;}
.www{width:120px; height:20px; padding:2px 0 2px 9px;
     position:absolute; right:20px; bottom:20px;}
.www ul li{list-style:none; float:left; margin-right:10px; background:#F60;
           width:20px; height:20px; text-align:center; color:white; 
           cursor:pointer; border-radius:50%;}
</style>
<script type="text/javascript">
function dianji(a){
document.getElementById('pic').src=a+'.jpg';
document.getElementById('bg'+a).style.backgroundColor='black';
                  }
</script>
</head>

<body>
<div class="abc">
   <img src="1.jpg" id="pic"/>
   <div class="www">
      <ul id="bbb">
         <li id="bg1" onclick="dianji(1)">1</li>
         <li id="bg2" onclick="dianji(2)">2</li>
         <li id="bg3" onclick="dianji(3)">3</li>
         <li id="bg4" onclick="dianji(4)">4</li>
      </ul>
   </div>
</div>
</body>
</html>

新手刚开始自学JS,学到带参函数了,写了一个点击切图,假设点击②后大图片变了,小②的背景变成了黑色,怎么写才能点击③后②的黑色背景消失呢?就是点击另一个切图图标的时候其他的图标背景色恢复原状。。。利用简单地方法怎么写?新手求教了,谢谢了
![Uploading screenshot . . .]()

展开
收起
小旋风柴进 2016-03-18 10:39:33 1847 0
1 条回答
写回答
取消 提交回答
  • 用个全局变量记住上一个点击的项,移除样式即可

         var lastId = false;
        function dianji(a) {
            if (lastId) document.getElementById('bg' + lastId).style.backgroundColor = '#F60';//
            lastId = a;
            document.getElementById('pic').src = a + '.jpg';
            document.getElementById('bg' + a).style.backgroundColor = 'black';
        }
    2019-07-17 19:06:07
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载