JS获取标签方法及兼容处理

时间:2023-03-09 04:43:49
JS获取标签方法及兼容处理
  1. document.getElementById('Id名');              // 所有浏览器
  2. document.getElementsByTagName('标签名');        // 所有浏览器
  3. document.getElementsByName('name');          // 所有浏览器
  4. document.getElementsByClassName('类名');            // 除ie9以下,均支持

如需通过类名获取标签,并兼容所有浏览器,则需做兼容处理:

 /*
* 功能: 通过类名获取一定范围内的标签数组
* 参数: 第一个参数表示获取的范围,若在整个文档搜索,则传入document; 第二个参数表示想要获取标签的类名
* 返回值: 第一个参数里的类名为第二个参数的标签数组
*/
function getElementsByClass(element, classStr) { if(element.getElementsByClassName) { // 如果浏览器有getElementsByClassName的方法,则直接使用
return element.getElementsByClassName(classStr);
} else { // 否则先查找标签中类名为className的标签 var elements = element.getElementsByTagName('*'),
arr = [], // 存放类名为className的标签
len = elements.length; for (var i = 0; i < len; i++) { if (elements[i].className == classStr) { // 如果为所给类名,则放入数组
arr.push(elements[i]);
}
}; return arr;
}
}