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 相关文章推荐
js自执行函数的几种不同写法的比较
Aug 16 Javascript
hover的用法及live的用法介绍(鼠标悬停效果)
Mar 29 Javascript
javascript图片延迟加载实现方法及思路
Dec 31 Javascript
深入理解JS函数的参数(arguments)的使用
May 28 Javascript
jQuery 调用WebService 实例讲解
Jun 28 Javascript
基于jQuery ligerUI实现分页样式
Sep 18 Javascript
浅谈regExp的test方法取得的值变化的原因及处理方法
Mar 01 Javascript
在Vue中使用echarts的方法
Feb 05 Javascript
详解Vue单元测试case写法
May 24 Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
Aug 17 Javascript
vue v-for直接循环数字实例
Nov 07 Javascript
React四级菜单的实现
Apr 08 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
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
PHP 命名空间和自动加载原理与用法实例分析
2020/04/29 PHP
javascript 操作Word和Excel的实现代码
2009/10/26 Javascript
Jquery练习之表单验证实现代码
2010/12/14 Javascript
JQuery记住用户名和密码的具体实现
2014/04/04 Javascript
javascript动态判断html元素并执行不同的操作
2014/06/16 Javascript
一个php+js实时显示时间问题
2015/10/12 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
js实现弹窗暗层效果
2017/01/16 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
想用好React的你必须要知道的一些事情
2017/07/24 Javascript
JavaScript伪数组用法实例分析
2017/12/22 Javascript
vue-cli中vue本地实现跨域调试接口
2019/01/16 Javascript
微信小程序实现锚点功能
2019/11/20 Javascript
基于element-ui对话框el-dialog初始化的校验问题解决
2020/09/11 Javascript
js实现网页随机验证码
2020/10/19 Javascript
Python 冒泡,选择,插入排序使用实例
2015/02/05 Python
Python爬取APP下载链接的实现方法
2016/09/30 Python
Python中断言Assertion的一些改进方案
2016/10/27 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
2017/11/11 Python
python PyTorch参数初始化和Finetune
2018/02/11 Python
Python之pandas读写文件乱码的解决方法
2018/04/20 Python
python中嵌套函数的实操步骤
2019/02/27 Python
python防止随意修改类属性的实现方法
2019/08/21 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
大学生个人求职信范文
2013/09/21 职场文书
公司同意接收函
2014/01/13 职场文书
门诊手术室工作制度
2014/01/30 职场文书
竞选体育委员演讲稿
2014/04/26 职场文书
保安公司服务承诺书
2014/05/28 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
2015年工商局个人工作总结
2015/07/23 职场文书
浅谈JS的二进制家族
2021/05/09 Javascript
my.ini优化mysql数据库性能的十个参数(推荐)
2021/05/26 MySQL
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫
集英社今正式宣布 成立游戏公司“集英社Games”
2022/03/31 其他游戏