代码改变世界

在360的兼容模式下关于innerHTML=“”,引发的问题

2018-03-01 17:20  ET.frog  阅读(479)  评论(0编辑  收藏  举报

innerHTML属性,可以动态设置和修改dom,但是在360的兼容模式下回存在一些问题......

	var dBody = document.body;
	var fatherDom = document.createElement('div');
	fatherDom.innerHTML = 'fatherDom';
	dBody.appendChild(fatherDom);
	
	var childDom = document.createElement('div');
	childDom.innerHTML = 'childDom';
	fatherDom.appendChild(childDom);
	
	clikeBtn.onclick = function() {
		dBody.innerHTML = '';
		//通过innerHTML=’‘,这种方式来删除dom---childDom也会被删除
		//childDom这个是我创建的对象啊,为什么会给我删除呢,这个我也不清楚
		//此种情况只针对360浏览器的兼容模式下,但是ie并不会
		dBody.removeChild(fatherDom);
		//通过removeChild,这种方式来删除dom---childDom并不会被删除
		dBody.appendChild(childDom);
	}

那么问题来了,360兼容模式使用的是本地ie浏览器,而用直接用ie去解析这段代码,childDom并不会被删除。默默的问一句360的锅还是ie的锅