Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在具有contenteditable属性的元素的父级上触发的事件_Javascript_Contenteditable_Addeventlistener - Fatal编程技术网

Javascript 在具有contenteditable属性的元素的父级上触发的事件

Javascript 在具有contenteditable属性的元素的父级上触发的事件,javascript,contenteditable,addeventlistener,Javascript,Contenteditable,Addeventlistener,如果一个具有contenteditable属性的元素是另一个具有contenteditable属性的元素的子元素,则任何激发的事件似乎都发生在父元素而不是子元素上。如何防止这种行为 <a href="#" contenteditable><img src="logo.png" contenteditable></a> <script> var editable = document.querySelectorAll("[contenteditab

如果一个具有contenteditable属性的元素是另一个具有contenteditable属性的元素的子元素,则任何激发的事件似乎都发生在父元素而不是子元素上。如何防止这种行为

<a href="#" contenteditable><img src="logo.png" contenteditable></a>

<script>
var editable = document.querySelectorAll("[contenteditable]");
for(var i=0;i<editable.length;i++){
editable[i].addEventListener("focus",editableFocus,false);
}
function editableFocus(e){
console.log(e.target.nodeName);
}
</script>

var editable=document.querySelectorAll(“[contenteditable]”);

对于(var i=0;我首先考虑的是这个问题,但没有什么区别。它似乎特定于contenteditable属性,因为可以通过将子元素包装在contenteditable设置为false的元素中来避免这个问题。但是,我不希望采用这种方法。