首页 > > > js如何获取动态创建的元素
function getByClass(oParent, sClass){
var aResult=[];
var aEle=oParent.getElementsByTagName('*');
for(var i=0; i<aEle.length; i++){
if(aEle[i].className==sClass){
aResult.push(aEle[i]);
}
}
return aResult;
};
window.onload=function(){
//切换图片
var oDivT2=document.getElementById('_easyui_tree_2');
var oUlTLines=oDivT2.nextElementSibling || oDivT2.nextSibling;
var oLiNan=oUlTLines.children[0];
var aSpanNan=getByClass(oLiNan,'tree-title');
var oLiPu=oUlTLines.children[1];
var aSpanPu=getByClass(oLiPu,'tree-title');
var oDivRC=document.getElementById('rightCon');
var oImgNan=oDivRC.getElementsByTagName('img')[0];
var oImgPu=oDivRC.getElementsByTagName('img')[1];
for(var i=0;i<aSpanPu.length;i++){
aSpanPu[i].onclick=function(){
oImgNan.style.display='none';
oImgPu.style.display='block';
var sTxtPu=this.innerText || this.textContent;
window.status=sTxtPu;
};
};
for(var j=0;j<aSpanNan.length;j++){
aSpanNan[j].onclick=function(){
oImgPu.style.display='none';
oImgNan.style.display='block';
var sTxtNan=this.innerText || this.textContent;
window.status=sTxtNan;
};
};
};我使用 jQuery easyui 的 tree 插件,左侧是结构树,右侧是图片。点击结构树的不同节点,两张图片进行切换显示。我把 js 代码放在了 head 中。
测试时报错:无法获取未定义或 null 引用的属性“nextElementSibling”。说明 oDivT2 没有获取到,_easyui_tree_2 是结构树中一个 div 的 id。偶尔刷新页面不报错,能实现效果。请问该怎么解决?
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1868/viewspace-3151807/ ,如需转载,请注明出处,否则将追究法律责任。