jquery - 如何确保冗余 <p> 标签不会破坏样式?

标签 jquery css tumblr

我从 Tumblr API 得到的结果不可靠。当我得到一行文本时,我只收到文本。当有多行时,每行都包含在 <p> 中标签。所以我要么得到:

This is a value with no second line

<p>This is a value</p>
<p>with a second line</p>

我希望两者看起来一样。我一直在手动添加 <p>围绕该值,但这将导致:

<p><p>This is a value</p>
<p>with a second line</p></p>

关于多行值。

我对如何解决这个问题有一些想法,但不确定哪个是最好的。

  1. 创建新的 CSS 样式 p p {}这样可以抵消搞砸的造型
  2. 使用jQuery 获取冗余的DOM 内容<p>标记并使它们不冗余
  3. 只需将文本加载到 jQuery 函数中,查看是否有 <p>标签,如果没有则添加它们,然后将结果写入 DOM。

我不确定选项 1 是否会很好地工作(尤其是跨浏览器),而且它看起来有点老套。关于选项 2 或选项 3 哪个更好以及我将如何实现有什么想法吗?

编辑:应该提到我正在玩 Tumblr 主题,所以 Python/PHP/ASP/etc 对我来说不可用(这会让我更容易!)。

最佳答案

为什么不只是

if ( str.indexOf('<p>') === -1 ) {
   str = '<p>' + str + '</p>';    
}

所以,如果没有一次出现 "<p>" string inside your string,这意味着结果是“单行”,您需要将其包装在 "<p>" 中标签。

关于jquery - 如何确保冗余 <p> 标签不会破坏样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6318922/

相关文章:

jquery 模板插件 - 在 {{each}} 中使用 {{if}} 语句

html - 创建 "navigation breadcrumb"

php - 在 Blogger 和 Tumblr 上分享内容/网站

html - FontAwesome 从 4 升级到 5 (Tumblr)

javascript - 使用 JavaScript 进行 Tumblr 箭头键导航

javascript - 带有 firefox/IE 的粘性表格标题

javascript - PayPal 关联结账点击事件

javascript - 如果变量是全局变量,为什么需要将参数传递给 javascript 中的自执行函数?

html - 我可以根据 css 网格中的图像移动使网格响应吗?

php - 仅在为空时删除 DIV