day02笔记
获取任意对象内部文本
设置任意对象内部文本
获取上一个兄弟元素的兼容函数
获取下一个兄弟元素的兼容函数
/**
* 获取任意对象内部文本(兼容所有浏览器)
* @param {[type]} element [description]
* @return {[type]} [description]
*/
function getInnerText(element) {
if (typeof element.innerText==="string") {
return element.innerText;
}else{
return element.textContent;
}
}
/**
* 设置任意对象内部文本(兼容所有浏览器)
* @param {[type]} element [description]
* @param {[type]} content [description]
*/
function setInnerText(element,content){
if (typeof element.innerText==="string") {
element.innerText=content;
}else{
element.textContent=content;
}
}
/**
* 获取上一个兄弟元素的兼容函数
* @param {[type]} element [description]
* @return {[type]} [description]
*/
function getPreviousElement(element){
if (element.PreviousElementSibling) {
return element.PreviousElementSibling;
}else{
var prev=element.PreviousSibling;
while(prev && prev.nodeType!==1){
prev = prev.PreviousSibling;
}
return prev;
}
}
/**
* 获取下一个兄弟元素的兼容函数
* @param {[type]} element [description]
* @return {[type]} [description]
*/
function getNextElement(element){
if (element.nextElementSibling) {
return element.nextElementSibling;
}else{
var next=element.nextSibling;
while(next && next.nodeType!==1){
next=next.nextSibling;
}
return next;
}
}
许愿墙案例部分兼容性封装包:
//getFirstElement获取第一个子元素的兼容函数
/**
* [getLastElement description]
* @param {[type]} element [description]
* @return {[type]} [description]
*/
function getFirstElement(element) {
// 如果能获取到则返回第一个子元素
if(element.firstElementChild) {
return element.firstElementChild;
}else{//不支持子元素一定会支持子节点
var node=element.firstChild;//节点不一定是想要的节点需要循环
while(node&&node.nodeType!==1){
node=node.nextSibling;
}
return node;
};
//getLastElement获取第一个子元素的兼容函数
/**
* [getLastElement description]
* @param {[type]} element [description]
* @return {[type]} [description]
*/
function getLastElement(element) {
// 如果能获取到则返回第一个子元素
if(element.LastElementChild) {
return element.LastElementChild;
}else{//不支持子元素一定会支持子节点
var node=element.LastChild;//节点不一定是想要的节点需要循环
while(node&&node.nodeType !==1){
node=node.previousSibling;
}
return node;
};