Javascript 为什么contenteditable beforeinput事件不可取消?
在阅读webkit文档时,它表示当与contenteditable一起使用时,beforeinput事件是可取消的。但我在chrome浏览器上运行文档中的代码,事件不可取消 我弄错了吗?如何使beforeinput事件可取消Javascript 为什么contenteditable beforeinput事件不可取消?,javascript,contenteditable,Javascript,Contenteditable,在阅读webkit文档时,它表示当与contenteditable一起使用时,beforeinput事件是可取消的。但我在chrome浏览器上运行文档中的代码,事件不可取消 我弄错了吗?如何使beforeinput事件可取消 这是一些常规内容 此文本完全可编辑 这是一些引用的内容 您只能更改此文本的格式 这是一些比较常规的内容 此文本也是完全可编辑的 函数设置() { addEventListener(“beforeinput”,事件=> { if(event.inputType.match
这是一些常规内容
此文本完全可编辑
这是一些引用的内容
您只能更改此文本的格式
这是一些比较常规的内容
此文本也是完全可编辑的
函数设置()
{
addEventListener(“beforeinput”,事件=>
{
if(event.inputType.match(/^format/))
返回;
for(让staticRange of event.getTargetRanges())
{
if(NODEISINDEQUOTE(staticRange.startContainer)
||NodeInsideQuote(staticRange.endContainer))
{
event.preventDefault();
返回;
}
}
});
函数nodeInsideQuote(节点)
{
让currentElement=node.nodeType==node.ELEMENT\u node?节点:node.parentElement;
while(当前元素)
{
if(currentElement.classList.contains(“引号”))
返回true;
currentElement=currentElement.parentElement;
}
返回false;
}
}
我在GitHub上为此打开了一个问题: