【发布时间】:2017-05-01 16:04:43
【问题描述】:
我正在基于InboxSDK 构建一个实用程序,它会在您的电子邮件末尾(但在签名之前)插入文本。 InboxSDK 将消息正文作为 HTML 元素提供给您,我正在尝试使用一些 Jquery 来放置文本。复杂之处在于用户可能拥有的不同“类型”签名。我将它们分为 3 个。
- 无签名
- '--' 签名
- 没有“--”签名
2 和 3 是困难的。这是两种情况下的 HTML。
2.
<div id=":nv" class="Am Al editable LW-avf" hidefocus="true" aria-label="Message Body" g_editable="true" role="textbox" contenteditable="true" tabindex="1" style="direction: ltr; min-height: 309px;">
<br clear="all">
<div>
<!--
<div>
Injected Text
</div>
-->
<br>
</div>--
<br>
<div class="gmail_signature" data-smartmail="gmail_signature">
<!-- Signature Content -->
</div>
</div>
3.
<div id=":nv" class="Am Al editable LW-avf" hidefocus="true" aria-label="Message Body" g_editable="true" role="textbox" contenteditable="true" tabindex="1" style="direction: ltr; min-height: 309px;">
<br clear="all">
<div>
<!--
<div>
Injected Text
</div>
-->
<div class="gmail_signature" data-smartmail="gmail_signature">
<!-- Signature Content -->
</div>
</div>
当“--”存在时,我希望将注入的新文本 <div> 放置在第一个子 div 中。当它不存在时,我希望它作为消息正文的直接子代,在签名前一个 div。
最优雅的 jquer-ish 方法是什么?
【问题讨论】:
标签: javascript jquery html gmail