开发者社区> 问答> 正文

用getElementsByTagName和getElementById获取该元素的属性为什么效果不一样

HTML代码

<h1>Amy</h1>
<ul>
    <li>
        <a href = "img/amy-1.jpg" onclick="showPic(this);return false;" title = "amy1"> amy1</a>
    </li>
    <li>
        <a href = "img/amy-2.jpg" onclick="showPic(this);return false;" title = "amy2"> amy2</a>
    </li>
    <li>
        <a href = "img/amy-3.jpg" onclick="showPic(this);return false;" title = "amy3"> amy3</a>
    </li>
    <li>
        <a href = "img/amy-4.jpg" onclick="showPic(this);return false;" title = "amy4"> amy4</a>
    </li>
    <img id="placeholder" src="img/test.jpg" alt="my image gallery" />
</ul>
<script type="text/javascript" src="scripts/shoWPic.js"></script>

js代码

     function showPic(whichpic){
        var source = whichpic.getAttribute("href");
        var placeholder = document.getElementById("placeholder");
        placeholder.setAttribute("src",source);
     }

把js代码里第三行document.getElementById("placeholder")换成document.getElementsByTagName("img")

展开
收起
杨冬芳 2016-06-21 14:17:06 2811 0
1 条回答
写回答
取消 提交回答
  • IT从业

    想换成getElementsByTagName获取那个img节点的话,应该改成document.getElementsByTagName("img")[0],因为getElementsByTagName("img")获取到的是img节点数组。

    2019-07-17 19:44:52
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载