所以我想说我有<div>
元素:
...
<div id="me"></div>
...
然后我有一个这样的脚本:
var me = document.getElementById("me");
me.innerHTML = '<span color="#00F">Hello!';
这个脚本是否是一个糟糕的“黑客”,为什么我必须写/我甚至不得不写:
me.innerHTML = '<span color="#00F">Hello!</span>';
,结尾是</span>
?
答案 0 :(得分:3)
虽然主流浏览器会自动添加结束标记,但插入像'<span color="#00F">Hello!';
这样的html是不好的做法。
要始终保持一致,请使用结束标记包装html。
来自评论:
那么为什么浏览器会自动添加结束标记呢?
首先,您强迫浏览器执行耗时的操作,然后并非所有浏览器都应该像这样工作。
答案 1 :(得分:1)
有效的HTML是可预测的,因此它健壮且可靠。 HTML标记汤取决于每个浏览器应用的特定修复,因此可能导致不一致并且难以诊断错误。
答案 2 :(得分:0)
也许你可以改变课程。
在那;
实施例
var me = document.getElementById('mykey');
me.innerHTML = '<span color="#0FF" />';
me.getElementsByTagName('span')[0].innerText = 'Hello';