JS.getTextContent(element,preformatted)使用介绍


Posted in Javascript onSeptember 21, 2013
/*获取标签的文字*/ 
function getTextContent(element, preformatted) { 
if (!elementIsVisible(element)) return ''; 
if (element.nodeType == 3 /*Node.TEXT_NODE*/) { 
var text = element.data; 
if (!preformatted) { 
//text = text.replace(/\n|\r|\t/g, " "); 
text = normalizeNewlines(text); 
} 
return text; 
} 
if (element.nodeType == 1 /*Node.ELEMENT_NODE*/ && element.nodeName != 'SCRIPT') { 
var childrenPreformatted = preformatted || (element.tagName == "PRE"); 
var text = ""; 
for (var i = 0; i < element.childNodes.length; i++) { 
var child = element.childNodes.item(i); 
text += getTextContent(child, childrenPreformatted); 
} 
// Handle block elements that introduce newlines 
// -- From HTML spec: 
//<!ENTITY % block 
// "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT | 
// BLOCKQUOTE | F:wORM | HR | TABLE | FIELDSET | ADDRESS"> 
// 
// TODO: should potentially introduce multiple newlines to separate blocks 
if (element.tagName == "P" || element.tagName == "TR" || element.tagName == "BR" || element.tagName == "HR" || element.tagName == "DIV") { 
text += "\n"; 
} 
return text; 
} 
return ''; 
} /*元素是否可见*/ 
function elementIsVisible(element) 
{ 
if(element.style.visiablity == "hidden" || element.style.display == "none") 
return false; 
else 
return true; 
}
Javascript 相关文章推荐
javascript模拟命名空间
Apr 17 Javascript
jquery.cookie实现的客户端购物车操作实例
Dec 24 Javascript
原生ajax处理json格式数据的实例代码
Dec 25 Javascript
使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
Jan 04 Javascript
常用的javascript设计模式
Jan 11 Javascript
jQuery实现的背景颜色渐变动画效果示例
Mar 24 jQuery
vue动画打包后失效问题的解决方法
Sep 18 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
Oct 19 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
Apr 02 Javascript
JavaScript中的 new 命令
May 22 Javascript
浅谈一种让小程序支持JSX语法的新思路
Jun 16 Javascript
vue + elementUI实现省市县三级联动的方法示例
Oct 29 Javascript
javascript实现原生ajax的几种方法介绍
Sep 21 #Javascript
使用javascript实现页面定时跳转总结篇
Sep 21 #Javascript
window.navigate 与 window.location.href 的使用区别介绍
Sep 21 #Javascript
javascript使用isNaN()函数判断变量是否为数字
Sep 21 #Javascript
js调用css属性写法
Sep 21 #Javascript
JSP跨iframe如何传递参数实现代码
Sep 21 #Javascript
使用Jquery实现点击文字后变成文本框且可修改
Sep 21 #Javascript
You might like
建立动态的WML站点(三)
2006/10/09 PHP
windows下PHP APACHE MYSQ完整配置
2007/01/02 PHP
PHP文件打开、关闭、写入的判断与执行代码
2011/05/24 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
php适配器模式简单应用示例
2019/10/23 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
页面中js执行顺序
2009/11/09 Javascript
JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
2010/04/15 Javascript
div失去焦点事件实现思路
2014/04/22 Javascript
JavaScript实现的浮动层框架用法实例分析
2015/10/10 Javascript
JS与Ajax Get和Post在使用上的区别实例详解
2016/06/08 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
2016/08/11 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
Angular 4.X开发实践中的踩坑小结
2017/07/04 Javascript
vue+jquery+lodash实现滑动时顶部悬浮固定效果
2018/04/28 jQuery
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
python实现中文分词FMM算法实例
2015/07/10 Python
python3.5实现socket通讯示例(TCP)
2017/02/07 Python
python实现蒙特卡罗方法教程
2019/01/28 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
2019/07/01 Python
python做接口测试的必要性
2019/11/20 Python
python groupby 函数 as_index详解
2019/12/16 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
2020/03/10 Python
Pycharm快捷键配置详细整理
2020/10/13 Python
浅析python实现动态规划背包问题
2020/12/31 Python
详解pandas映射与数据转换
2021/01/22 Python
澳大利亚领先的女性运动服品牌:Lorna Jane
2020/06/19 全球购物
英智兴达软件测试笔试题
2016/10/12 面试题
电脑饰品店的创业计划书
2014/01/21 职场文书
担保书怎么写
2014/04/01 职场文书
五四演讲稿范文
2014/09/03 职场文书
2014年政工师工作总结
2014/12/18 职场文书
售后前台接待岗位职责
2015/04/03 职场文书
创业计划之特色精品店
2019/08/12 职场文书
SQL写法--行行比较
2021/08/23 SQL Server
logback 实现给变量指定默认值
2021/08/30 Java/Android