利用DOM的方式点击切换图片及修改文字

本文通过一个图片点击切换的例子,详细介绍了如何使用DOM方法getAttribute和setAttribute来动态改变网页元素的属性值,包括图片源和描述文字。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本案例主要学习理解,用到的几个DOM方法

01、getAttribute()方法,获取元素的属性值

02、setAttribute('src',source) 方法,用后边的值修改前边这个元素的属性值

html基本框架代码

1 <h1>图片点击切换</h1>
2     <ul id="imagegallery">
3         <li><a href="images/654.jpg" title="图片一说明">图片一</a></li>
4         <li><a href="images/contentimg.jpg" title="图片二说明">图片二</a></li>
5         <li><a href="images/tuku.jpg" title="图片三说明">图片三</a></li>
6     </ul>
7     <img src="images/toutiao3.jpg" alt="占位图" id="img">
8     <p id="description">图片说明</p>

js相关代码

实现的思路分解:

  01、用getAttribute()方法获取到a标签的href的属性值

  02、用document.getElementById()方法获取到图片

  03、用setAttribute('要修改的元素属性',用href的值修改)

点击修改图片基本思路就是这样。

修改文字的思路,这里为了练习dom的相关方法,没有使用innerHTML方法

  01、用getAttribute()方法获取到a标签的title的属性值

  02、获取要修改的id

  03、获取p元素的第一个文本节点的值 用到firstChild.nodeValu获取

  04、我们把获取到的title的属性值赋值给03步骤的变量

 1  function showpic(winpic){
 2             if(!document.getElementById('img')) return false;
 3             var source = winpic.getAttribute('href');
 4             var oImg = document.getElementById('img');
 5             if(oImg.nodeName !='IMG') return false;
 6             oImg.setAttribute('src',source);
 7             if(document.getElementById('description')){
 8                 var description = document.getElementById('description');
 9                 var text = winpic.getAttribute('title');
10                 description.firstChild.nodeValue = text;
11                 //description.innerHTML = text;
12             }
13             return true;
14         }
15 
16         function prepareGallery(){
17             if(!document.getElementsByTagName) return false;
18             if(!document.getElementById) return false;
19             if(!document.getElementById('imagegallery')) return false;
20             var gallery = document.getElementById('imagegallery');
21             var links = gallery.getElementsByTagName('a');
22             for(var i=0;i<links.length;i++){
23                 links[i].onclick = function(){
24                    //return showpic(this) ? return : false;
25                    showpic(this);
26                    return false;  
27                 }
28             }
29         }
30 
31         prepareGallery();

 

转载于:https://www.cnblogs.com/xingfuggz/p/9577422.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值