前言:在《DOM编程艺术》一书中,作者给出了一个实例:创建一个图片库,其实功能很简单,就是点击某个列表项时,下方出现相应的图片以及图片说明(图片说明事先以title的形式写在HTML中),虽然是一个简单的例子,当时作者在书中循序渐进,不断的改善图片库中间引入各种知识点,真的是一本好书,在此对这个实例进行一些总结。
-----------------开始-----------------
1. HTML部分
<h1 id="电影天堂">电影天堂</h1> <ul> <li> <a href="images/01灰姑娘.jpg" title="灰姑娘" onclick="showPic(this);return false;">灰姑娘</a> </li> <li> <a href="images/02千与千寻.jpg" title="千与千寻" onclick="showPic(this);return false;">千与千寻</a> </li> <li> <a href="images/03哆啦A梦.jpg" title="哆啦A梦" onclick="showPic(this);return false;">哆啦A梦</a> </li> <li> <a href="images/04当幸福来敲门.jpg" title="当幸福来敲门" onclick="showPic(this);return false;">当幸福来敲门</a> </li> </ul> <!--占位符图片--> <img src="/static/imghwm/default1.png" data-src="images/placeholder.jpg" class="lazy" id="placeholder" alt="hehehe"> <!--一段描述--> <p id="description">选择一张图片</p>
2. CSS样式
h1{ color: #333; } a{ color: gray; font-weight: bold; text-decoration: none; } ul{ padding: 0; } li{ float: left; padding: 1em; list-style-type: none; } img{ display: block; clear: both; }
3. js代码
//首先封装一个函数, 参数whicpic代表一个元素的节点,即指向某个图片的a元素 function showPic(whichpic){ //获取某个图片的href属性 var source = whichpic.getAttribute("href"); //获取占位符图片的节点 var placeholder = document.getElementById("placeholder"); //使用setAttribute对placeholder元素的src属性进行刷新 placeholder.setAttribute("src" , source); //one more thing:在前换图片的时候,将占位符图片下面的文字内容切换为对应图片的title //首先获取图片对应的title属性 var text = whichpic.getAttribute("title"); //获取图片描述的节点 var description = document.getElementById("description"); //实现文本的切换 //首先要获取到description中的文本,需要先获取这个文本节点再获取这个文本节点的值,并把text的值赋值给它 description.firstChild.nodeValue = text; //也可以用firstchild:description.firstChild.nodeValue }
4.总结
1.首先获取图片的href属性:
whichpic.getAttribute("href")2.接着获取占位符图片的节点: document.getElementById("placeholder")
3.然后设置占位符图片的 src属性:
placeholder.setAttribute("src" , source)4.接着对占位符图片下方的文字进行操作,把图片的 title值赋值给
标签的 nodeValue
-
var text = whichpic.getAttribute("title")
-
var description = document.getElementById("description")
-
description.firstChild.nodeValue = text
其中可以通过childNode获取节点的所有子节点,并且用nodeType属性进行判断:1代表元素节点、2代表属性节点、3代表文本节点,因为本例
标签只有一个子节点,所以可以用fistChild,或者childNode[0]来获取,获取节点后再用nodeValue获取节点的属性值。
5.添加 onclick处理事件
这只是初级的一个例子,所以函数处理事件嵌套在 HTML代码中,并且为了阻止点击链接的默认行为(跳转到一个新的页面),后面还要返回给它一个 false。
<li> <a href="images/01灰姑娘.jpg" title="灰姑娘" onclick="showPic(this);return false;">灰姑娘</a> </li>
6.不足
点击事件绑定在HTML代码中,很笨重,下一篇中将做升级。
7.老规矩,贴出完整源码
example <h1 id="电影天堂">电影天堂</h1> <ul> <li> <a href="images/01灰姑娘.jpg" title="灰姑娘" onclick="showPic(this);return false;">灰姑娘</a> </li> <li> <a href="images/02千与千寻.jpg" title="千与千寻" onclick="showPic(this);return false;">千与千寻</a> </li> <li> <a href="images/03哆啦A梦.jpg" title="哆啦A梦" onclick="showPic(this);return false;">哆啦A梦</a> </li> <li> <a href="images/04当幸福来敲门.jpg" title="当幸福来敲门" onclick="showPic(this);return false;">当幸福来敲门</a> </li> </ul> <!--占位符图片--> <img src="/static/imghwm/default1.png" data-src="images/placeholder.jpg" class="lazy" id="placeholder" alt="hehehe"> <!--一段描述--> <p id="description">选择一张图片</p> <script> //首先封装一个函数, 参数whicpic代表一个元素的节点,即指向某个图片的a元素 function showPic(whichpic){ //获取某个图片的href属性 var source = whichpic.getAttribute("href"); //获取占位符图片的节点 var placeholder = document.getElementById("placeholder"); //使用setAttribute对placeholder元素的src属性进行刷新 placeholder.setAttribute("src" , source); //one more thing:在前换图片的时候,将占位符图片下面的文字内容切换为对应图片的title //首先获取图片对应的title属性 var text = whichpic.getAttribute("title"); //获取图片描述的节点 var description = document.getElementById("description"); //实现文本的切换 //首先要获取到description中的文本,需要先获取这个文本节点再获取这个文本节点的值,并把text的值赋值给它 description.firstChild.nodeValue = text; //也可以用firstchild:description.firstChild.nodeValue } </script>

HTMLtagsdefinethestructureofawebpage,whileattributesaddfunctionalityanddetails.1)Tagslike,,andoutlinethecontent'splacement.2)Attributessuchassrc,class,andstyleenhancetagsbyspecifyingimagesources,styling,andmore,improvingfunctionalityandappearance.

HTML的未来将朝着更加语义化、功能化和模块化的方向发展。1)语义化将使标签更明确地描述内容,提升SEO和无障碍访问。2)功能化将引入新元素和属性,满足用户需求。3)模块化将支持组件化开发,提高代码复用性。

htmlattributesarecrucialinwebdevelopment forcontrollingBehavior,外观和功能

alt属性是HTML中标签的重要部分,用于提供图片的替代文本。1.当图片无法加载时,alt属性中的文本会显示,提升用户体验。2.屏幕阅读器使用alt属性帮助视障用户理解图片内容。3.搜索引擎索引alt属性中的文本,提高网页的SEO排名。

HTML、CSS和JavaScript在网页开发中的作用分别是:1.HTML用于构建网页结构;2.CSS用于美化网页外观;3.JavaScript用于实现动态交互。通过标签、样式和脚本,这三者共同构筑了现代网页的核心功能。

设置标签的lang属性是优化网页可访问性和SEO的关键步骤。1)在标签中设置lang属性,如。2)在多语言内容中,为不同语言部分设置lang属性,如。3)使用符合ISO639-1标准的语言代码,如"en"、"fr"、"zh"等。正确设置lang属性可以提高网页的可访问性和搜索引擎排名。

htmlattributeseresene forenhancingwebelements'functionalityandAppearance.TheyAdDinformationTodeFineBehavior,外观和互动,使网站互动,响应式,visalalyAppealing.AttributesLikutesLikeSlikEslikesrc,href,href,href,类,类型,类型,和dissabledtransfransformformformformformformformformformformformformformformforment

toCreateAlistinHtml,useforforunordedlistsandfororderedlists:1)forunorderedlists,wrapitemsinanduseforeachItem,RenderingeringAsabulleTedList.2)fororderedlists,useandfornumberedlists,useandfornumberedlists,casundfornumberedlists,customeizableWithTheTtheTthetTheTeTeptTributeFordTributeForderForderForderFerentNumberingSnumberingStyls。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。