Pro JavaScript Techniques中文版256页的例子代码有误, 原版给出的例子就已经错误了
Listing A-30. Converting a Set of Links Into Plain URLs
// Convert all links to visible URLs (good for printing
// Find all <a> links in the document
var a = document.getElementsByTagName("a");
//首先这边循环不能用while,
while ( a.length )只是判断a是否包含length属性, 在这边只要存在<a>元素,
//那么
document.getElementsByTagName("a")
返回一个NodeList, 即a, 同时这个NodeList包含length属性,
//这样将陷入死循环
while ( a.length ) {
// Create a <strong> element
var s = document.createElement("strong");
// Make the contents equal to the <a> link URL
// 因为用的while循环, 这边的i未定义
s.appendChild( document.createTextNode( a[i].href ) );
// Replace the original <a> with the new <strong> element
// 这边的错误是replaceChild, 先不管i, 假设a[i]引用某个<a>元素
// 那么这边的代码也应该是这么写的
a[i].parentNode.replaceChild( s, a[i] );
a[i].replaceChild( s, a[i] );
}
以下是demo
<html>
<head>
</head>
<body>
<a href="
www.163.com
">163</a>
<a href="
www.sina.com
">新浪</a>
<script type="text/javascript">
var a = document.getElementsByTagName(
'a');
// 这是我修改后的代码
for(var i=a.length-1;i>=0;i--){
var s = document.createElement('
strong');
s.appendChild(document.
createTextNode(a[i].href))
a[i].parentNode.replaceChild(
s, a[i]);
}
/**
var a = document.getElementsByTagName("a");
while ( a.length ) {
// Create a <strong> element
var s = document.createElement("strong");
// Make the contents equal to the <a> link URL
s.appendChild( document.createTextNode( a[i].href ) );
// Replace the original <a> with the new <strong> element
a[i].replaceChild( s, a[i] );
}*/
</script>
</body>
</html>
分享到:
相关推荐
《Pro JavaScript Techniques》是一本面向现代专业Web开发者的高级JavaScript技术书籍,由知名开发者John Resig编写。本书聚焦于实际工作中的JavaScript技巧与最佳实践,旨在帮助读者深入理解和掌握这门语言的核心...
《Pro JavaScript Techniques, 2nd Edition》是一本深入探讨JavaScript编程技术的专业书籍,旨在帮助开发者提升JavaScript编程技能,实现更高效、更具交互性的Web应用。该书的第二版结合了最新的JavaScript特性,如...
《Pro JavaScript Techniques》是John Resig,也就是jQuery之父的作品,这本书深入探讨了JavaScript编程的各种高级技巧和实用方法。本书的出版商是Apress,它并非普通的扫描版,而是高质量的原版电子书,旨在为读者...
### 《Pro JavaScript Techniques, 第二版》关键知识点解析 #### 一、专业JavaScript技术概览 本书《Pro JavaScript Techniques, 第二版》为读者提供了当前JavaScript状态的专业概述,特别是对于那些希望深入了解...
综上所述,《Pro JavaScript Techniques》是一本非常有价值的JavaScript高级编程指南,它不仅能够帮助开发者深入理解JavaScript的核心概念和技术,还提供了丰富的实践经验和优化技巧,对于想要提升自己JavaScript...
《Pro JavaScript Techniques》是JQuery作者的一本经典著作,它深入探讨了JavaScript这一重要的Web开发语言,涵盖了从基础到高级的各种技巧和最佳实践。这本书旨在帮助开发者提升JavaScript编程能力,优化网页性能,...
**标题解析:** "Pro JavaScript RIA Techniques" 这个标题指的是关于专业级JavaScript富互联网应用(Rich Internet Applications,简称RIA)的技术方法。这通常涵盖了使用JavaScript构建高性能、交互性强的Web应用...
《Apress.Pro.JavaScript.Techniques.Dec.2006》是一本专注于JavaScript技术的专业书籍,出版于2006年12月。这本书旨在帮助读者深入理解和掌握JavaScript这一编程语言,是学习JavaScript的优秀资源。书中涵盖了...
在"Apress.Pro.JavaScript.Techniques.Dec.2006"这本书中,作者深入浅出地探讨了JavaScript的各种技术,旨在帮助读者提升JavaScript编程技能。 首先,JavaScript的基础知识包括变量、数据类型、运算符、流程控制...
Apress源代码 该存储库随附John Resig的 (Apress,2007年)。 使用绿色按钮将文件下载为zip格式,或使用Git将存储库克隆到您的计算机上。 发行版 版本v1.0对应于已出版书籍中的代码,没有更正或更新。 会费 请参阅...
《Pro Javascript Techniques,Second Edition》 读书笔记 第三章,创建可重用代码 shim和polyfill 在JavaScript的世界里,有两个词经常被提到,shim和polyfill.它们指的都是什么,又有什么区别? 一个shim是一个库,它将...
《精通JavaScript》(Pro JavaScript Techniques ) 源代码
"Pro Zend Framework Techniques Build a Full CMS Project code 代码" 这个标题和描述揭示了我们正在探讨一个使用 Zend Framework 框架构建的全功能内容管理系统(CMS)项目。这个项目提供了实际的源代码,旨在帮助...
专业 JavaScript RIA 技术:最佳实践、性能、演示作者:Den Odell ISBN 9781430219347 源代码发布 - 版本 1.6 2010 年 12 月 17 日更新 - 版本 1.6 修复: 第 2 章,清单 2-14,更新了 getPosition 方法以正确返回...