图片点击事件,点击小图片,大图片没有变化为相对应的小图片,这是为什么呢?

图片点击事件,点击小图片,大图片没有变化为相对应的小图片,这是为什么呢?

2222222222222222222222222222222222222

正在回答

登陆购买课程后可参与讨论,去登陆

3回答
vavar pics=document.getElementById("li-top-list-menu").getElementByTagName("img");   var pcs=document.getElementById("'li-top-list").getElementByTagName("img")[0];
  
  var pics=document.getElementById("li-top-list-menu").getElementByTagName("img");   
  var pcs=document.getElementById("'li-top-list").getElementByTagName("img")[0];
   for(var i=0;i<pics.lenght;i++){
    pics[i].onclick=function(){
   pcs.setAttribute("src",this.getAttribute("src"));
   }
   }

上面这段代码有三处错误:

  1. 第一个 li-top-list-menu 后面的 getElementByTagName("img");   应该是 getElementsByTagName("img");   注意少了个s 。

  2. getElementById("'li-top-list")  这里 在 li-top-list 前多了个 单引号 ' 。

  3. for(var i=0;i<pics.lenght;i++){  里面的 pics.lenght 应该是 pics.length 。

同学你以后要多注意细节。

  • 慕粉2053247714 提问者 #1
    大神,知道了。不过还是有个小疑问, 我鼠标滑到第二个class为li-t的这个li上,就实现不了里面的点击切换图片效果了。就一个li能实现图片切换效果,鼠标滑到第二个li,内容显示出来之后,图片就切换没有效果了。是我获取byid错了吗? <li class="li-o"><span></span><p>揭开留底防伪标签</p><div class="clear"></div><b></b></li> <li class="li-t"><span></span><p>高温消失防伪标签</p><div class="clear"></div><b></b></li>
    2017-06-23 14:55:35
  • 慕粉2053247714 提问者 #2
    大神,知道了。不过还是有个小疑问, 我鼠标滑到第二个class为li-t的这个li上,就实现不了里面的点击切换图片效果了。就一个li能实现图片切换效果,鼠标滑到第二个li,内容显示出来之后,图片就切换没有效果了。这个是我获取的时候byid获取错了吗?只能是实现第一个li里面的图片切换效果,显示第二个li中的内容,里面的图片切换就实现不了。
    2017-06-23 16:26:46
  • I_尼克哇 回复 提问者 慕粉2053247714 #3
    因为使用id只认一个,如果麻烦点的话,可以每个li-t下写不同的id,针对每一个id下的图片写click事件。还有一种简单的办法。不用id,用class。如下,看不明白的话好好学习下jquery吧。 $('.li-top-list-menu').each(function(){ var obj_list_menu = $(this); $(this).find('img').each(function(){ $(this).click(function(){ obj_list_menu.prev('.li-top-list').find('img').attr('src', $(this).attr('src')); }) }); 替换掉,/** var pics=document.getElementById("li-top-list-menu").getElementsByTagName("img"); var pcs=document.getElementById("li-top-list").getElementsByTagName("img")[0]; for(var i=0;i<pics.length;i++){ pics[i].onclick=function(){ pcs.setAttribute("src",this.getAttribute("src")); } } **/
    2017-06-23 17:24:30
提问者 慕粉2053247714 2017-06-23 14:16:03

点击下面的3个小框里面的图片,上面的大框图片就变化为对应小框里面的图片。求求了

小丸子爱吃菜 2017-06-23 14:04:31

运行了你的代码,没有图片资源,没办法看你的问题并帮你调试。如果是作业相关的问题,可以将作业提交了,并将你的问题提出,老师在批改作业时会看到并给你代码的修改建议或者问题的解决办法。祝学习愉快!http://img1.sycdn.imooc.com/climg//594caf320001c7d012880826.jpg

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师