已编辑的html元素的值

时间:2015-07-13 16:00:25

标签: javascript html firefox contenteditable onblur

为什么此代码在Firefox中不起作用? 目标是在元素失去焦点时获取编辑的值

out = document.getElementById('out');
edit = function(e) {
  var element = e;
  element.contentEditable = true;
  element.onblur = function(blur) {
    console.log(element.innerText);
    out.innerText = element.innerText;
  };
};
span {
  background-color: cyan;
}
#out {
  background-color: yellow;
  padding: 0.5em;
}
<span ondblclick="edit(this)" data-foo="foo" data-bar="bar">
    double-click and edit-me</span>

<p></p>
<span id="out"></span>

1 个答案:

答案 0 :(得分:4)

Firefox不支持.innerText。您应该使用W3标准.textContent代替。

这适用于所有现代浏览器,如果需要可以修补到IE8中。