javascript - 删除空 <p> 的函数会删除包含内容的 <p>

标签 javascript jquery html

ive 创建了一个函数,如果 p 元素没有任何内容或内部有 br,则在 contenteditable 之后离开时,该函数应该删除该 p 元素。问题是,当 .blur() !? 时,它也会删除一个有内容的 li 。 我快要疯了,因为我确信 10 分钟前它就有效了......

这是函数:

$('p').live('blur', function() {
localStorage.setItem('todo', listan.innerHTML);
color();

if ($(this).html() == "" || "<br>")
{
  console.log($(this).html());
  $(this).parent().remove();
  localStorage.setItem('todo', listan.innerHTML);
}
}); 

列表(“listan”)如下所示:

<ul ID="listan">
      <li><p contenteditable="true" class="thing">something</p><input type="button" value="ta bort" class="delete"></li>  
</ul>

最佳答案

从代码中删除 .parent(),因为“blurring”p 的父元素是 li。另请检查您的 if 语句。

$('p').live('blur', function() {
    localStorage.setItem('todo', listan.innerHTML);
    color();

    var html = $(this).html();
    if (html == "" || html == "<br>") {
        console.log($(this).html());
        $(this).remove();
        localStorage.setItem('todo', listan.innerHTML);
    }
});​

关于javascript - 删除空 <p> 的函数会删除包含内容的 <p>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10576134/

相关文章:

javascript - 如何通过单击同一行列中的图像来删除行?

javascript - HTML 中的段落将不清晰

javascript - jQuery UI 对话框 - 关闭后不打开

html - 元素出现在</html>之后是否合法?

html - JSF 不呈现自定义 HTML 标记属性

javascript - 如何在不折叠的情况下禁用所有 Kendo TreeView 节点

javascript - 如何检测浏览器插件?

javascript - 使用替换更快地处理情感图像?

javascript - 如何检查each()迭代以promise()结束

html - 在一个元素上使用超过 1 个 CSS 类的正确方法是什么?