使用React在safari中的可编辑<span>上触发blur()

时间:2017-04-13 09:15:49

标签: javascript reactjs safari

我开始使用react来处理可编辑字段。我需要在用户按下&#34; Enter&#34;时触发blur()事件。在键入字段时。我的代码适用于Chrome,但在Safari中无效。当我按下标签文本时,游标停留在Safari中不会触发。

触发模糊的功能():

// Event handler

saveChanges (event) {
    const key = event.key;

    if (key ==='Enter') {
        event.preventDefault();
        event.target.blur();
    }
}

JSX:

<li>
    <span
        contentEditable
        suppressContentEditableWarning
        onBlur = { this._modifyState}
        onKeyPress = { this._saveChanges }>
        { profile[title] }
    </span>
</li>
<li>
    <select onMouseDown = { (event) => {event.target.focus();} }>
        <option>Option 1</option>
        <option>Option 1</option>
        <option>Option 1</option>                    
    </select>
</li>

0 个答案:

没有答案