Javascript 粘贴或删除某些内容后,如何将元素从DOM中取出?
我正在使用jQuery的Javascript 粘贴或删除某些内容后,如何将元素从DOM中取出?,javascript,jquery,contenteditable,Javascript,Jquery,Contenteditable,我正在使用jQuery的remove()函数删除contenteditable区域中粘贴/删除的所有内容,除了文本。我对禁用图像特别感兴趣 我试过了 函数removeImg(){ setInterval(函数(){ $(“#editableDiv”).contents(“:not(p)”).remove(); }, 1); } #可编辑div{ 左侧填充:10px; 宽度:100%; 边框:纯色1px蓝色; } img{ 宽度:100px; 右边距:20px; } 您粘贴或放置在此处的图像应
remove()
函数删除contenteditable
区域中粘贴/删除的所有内容,除了文本。我对禁用图像特别感兴趣
我试过了
函数removeImg(){
setInterval(函数(){
$(“#editableDiv”).contents(“:not(p)”).remove();
}, 1);
}
#可编辑div{
左侧填充:10px;
宽度:100%;
边框:纯色1px蓝色;
}
img{
宽度:100px;
右边距:20px;
}
您粘贴或放置在此处的图像应自动删除
您可以使用以下图像:
复制粘贴或拖放它们都不起作用…
我想你不需要时间间隔。只需将内容设置为
function removeImg() {
document.getElementById("editableDiv").innerHTML = "<p>Images that you paste or drop here should be automatically removed.</p>";
}
希望这有帮助 我想你不需要间隔时间。只需将内容设置为
function removeImg() {
document.getElementById("editableDiv").innerHTML = "<p>Images that you paste or drop here should be automatically removed.</p>";
}
希望这有帮助 我认为您想从正文中删除元素,而不是
contenteditable div
?
然后你可以这样做:
-查找所有图像,添加addEventListener
mousedown
-按下鼠标添加自动递增的id,在本例中:clicked2
++数字。
这样做的目的是,即使用户不删除项目,您也拥有唯一的id。每次鼠标按下时,新id都会添加到单击的元素上。如果id不适合你,你可以去上课或做任何事情
-然后在drop上调用您的函数,以删除元素(如果其下垂且具有最后生成的id)
您可以对任何元素选择器应用相同的逻辑,而不仅仅是img
,只需使选择器document.queryselectoral('body*')
var i=0;
var removeID=“”;
[…document.querySelectorAll('img')].forEach(img=>{
img.addEventListener('mousedown',event=>{
img.id=“单击”+(++i);
console.clear();
removeID=img.id;
console.log(removeID);
})
})
函数removeImg(){
getElementById(removeID.remove();
}
#可编辑div{
左侧填充:10px;
宽度:100%;
边框:纯色1px蓝色;
}
img{
宽度:100px;
右边距:20px;
}
您粘贴或放置在此处的图像应自动删除
您可以使用以下图像:
复制粘贴或拖放它们都不起作用…
我想您想从正文中删除元素,而不是contenteditable div
?
然后你可以这样做:
-查找所有图像,添加addEventListener
mousedown
-按下鼠标添加自动递增的id,在本例中:clicked2
++数字。
这样做的目的是,即使用户不删除项目,您也拥有唯一的id。每次鼠标按下时,新id都会添加到单击的元素上。如果id不适合你,你可以去上课或做任何事情
-然后在drop上调用您的函数,以删除元素(如果其下垂且具有最后生成的id)
您可以对任何元素选择器应用相同的逻辑,而不仅仅是img
,只需使选择器document.queryselectoral('body*')
var i=0;
var removeID=“”;
[…document.querySelectorAll('img')].forEach(img=>{
img.addEventListener('mousedown',event=>{
img.id=“单击”+(++i);
console.clear();
removeID=img.id;
console.log(removeID);
})
})
函数removeImg(){
getElementById(removeID.remove();
}
#可编辑div{
左侧填充:10px;
宽度:100%;
边框:纯色1px蓝色;
}
img{
宽度:100px;
右边距:20px;
}
您粘贴或放置在此处的图像应自动删除
您可以使用以下图像:
复制粘贴或拖放它们都不起作用…
没有一个答案能解决我想要实现的目标。最后通过更改以下内容来修复它:
函数removeImg(){
setInterval(函数(){
$(“#editableDiv”).contents(“:not(p)”).remove();
}, 1);
}
没有一个答案能解决我想要实现的目标。最后通过更改以下内容来修复它:
函数removeImg(){
setInterval(函数(){
$(“#editableDiv”).contents(“:not(p)”).remove();
}, 1);
}