/*

text方法,给网页元素设置文本值的方法
主要处理火狐不支持innerText这个属性的问题。
还学习了如何判断一个字符串类型的属性是否存在
如果判断一个对象类型的属性是否存在,用if(ele.attr)就行,但是如果判断字符串类型的,则就要if(typeof ele.attr=='string')这样了,其它类型同理
第二个参数可选,如果有第二个参数,则是设置文本值
*/
function text(ele,str){
if(ele&&ele.nodeType&&ele.nodeType===1){//如果第一个参数是元素类型
if(str===undefined){//如果第二个参数没有传过来
if(typeof ele.textContent=='string')
//上句是在判断浏览器是不是支持textContent这个属性,
//如果支持则此属性的类型为string,否则为undefined
return ele.textContent;
else
return ele.innerText;
 
}else if(typeof str=='string'){
//如果传了第二个参数,并且第二个参数的类型正确,则是
//给此元素设置文本值
if(typeof ele.textContent=='string')
ele.textContent=str;
else
ele.innerText=str;
}else {
alert('第二个参数str有误') ;
throw new Error('第二个参数str有误');
}
}else{
alert('第一个参数ele误!');
throw new Error('第二个参数str有误');//这样写更好
}
 
}

innerText兼容性问题的更多相关文章

  1. JavaScript--动态添加元素

    在网页中,使用JavaScript动态创建元素的方式有三种: 1.document.write() 2.Element.innerHTML 3.document.createElement() 在上述 ...

  2. JS获取标签内容的方法

    JS获取标签内容的方法 测试代码 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  3. textContent、innerText 以及Event事件兼容性问题

    今天在完成前端的简单练习时发现了一些兼容性的问题,百度后得以解决. 这里主要讨论Firefox与Chrome的兼容性问题. textContent与 innerText 在javascript中, 为 ...

  4. innerHTML、outerHTML、innerText、outerText的区别及兼容性问题

    今天看了很多文章关于innerHTML.outerHTML.innerText.outerText的区别,都是很模糊的一个介绍,所以自己总结下这些区别以及一些重点内容.很多文章在描述这些区别的时候,都 ...

  5. innerHtml innerText textContent兼容性问题

    innerHtml,innerText,textContentinnerHtml获取元素带标签的内容:innerText只获取元素的文本:火狐不支持innerText,支持textContent: / ...

  6. innerHTML和innerText的区别

    以<p id="example">welcome to <strong>JavaScript</strong> !!!</p>为例: ...

  7. javascript中一些常见的兼容性问题

    下面是一些Javascript的IE和Firefox(火狐)兼容性的常用例子 1. document.formName.item("itemName") 问题 说明:IE下,可以使 ...

  8. 封装js的部分兼容性

    //获取标签的内容(兼容所有浏览器)function getInnerText(element) { //能力检测(先判断如果这个能力有这个) if(typeof element.innerText ...

  9. js中兼容性问题的封装(能力检测)

    所谓兼容性,就是看浏览器是否支持当前对象的属性或是方法,先通过获得页面文本内容的方式来了解兼容性,并封装函数或对象以解决此类问题. 获得页面文本内容的方式:innnerText 或textConten ...

随机推荐

  1. java基础循环

    一. while循环 示例1:.循环打印1到10之间的值 public class Test1 { public static void main(String[] args) { int i=1;/ ...

  2. webDriver对element进行操作

    非常感谢原作者:eastmount,原地址:http://blog.csdn.net/eastmount/article/details/48108259     感谢感谢 这篇文章主要Seleniu ...

  3. eyoucms 前台 getshell 复现

    漏洞地址:http://www.sch01ar.com/index.php/api/Uploadify/preview 这样子说明存在漏洞 对 <?php phpinfo(); 进行 base6 ...

  4. Rplot

    #!/usr/bin/Rscriptlibrary(ggplot2) cf = read.table(file = 'result_sort.txt', header = TRUE, sep='\t' ...

  5. 02_java之数据类型和基本运算

    01变量概述 * A: 什么是变量? * a: 变量是一个内存中的小盒子(小容器),容器是什么?生活中也有很多容器,例如水杯是容器,用来装载水:你家里的大衣柜是容器,用来装载衣裤:饭盒是容器,用来装载 ...

  6. python找寻合适的日志库logging Handler——Handler自定义实现

    最近在用python tornado开发一个app的服务端.投产的系统肯定需要包含日志功能,这里就自然想到了用python自带的logging库.   logging中日志内容的输出都交由Handle ...

  7. leetcode380

    class RandomizedSet { public: /** Initialize your data structure here. */ RandomizedSet() { } /** In ...

  8. Java并发之AQS详解(转)

    一.概述 谈到并发,不得不谈ReentrantLock:而谈到ReentrantLock,不得不谈AbstractQueuedSynchronized(AQS)! 类如其名,抽象的队列式的同步器,AQ ...

  9. mysql update更新带子查询的实现方式

    现在要做一下数据移植,需要更新相关的数据,需要在mysql中更新时不能将更新的表作为查询的表. 总结一下: 一:单表更新时 例如: update customer set category = 1 W ...

  10. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 16—Recommender Systems 推荐系统

    Lecture 16 Recommender Systems 推荐系统 16.1 问题形式化 Problem Formulation 在机器学习领域,对于一些问题存在一些算法, 能试图自动地替你学习到 ...