javascript - 如何找到前一个div中的强项?

标签 javascript jquery html

我有自动生成 id 的 HTML(我不知道元素 id)

HTML 类似于:

<div id='maindiv">
    <div class="clearfix time">
        <h6><strong>5 septembre 2014</strong> 15:18</h6>
    </div>
    <div id="m1" class="clearfix received">
        <p>Message ouvert 1</p>
        <span id="o1"></span>
    </div>
    <div id="m2" class="clearfix sent">
        <span id="o2" class="glyphicon glyphicon-ok"></span>
        <p>Message ouvert 2</p>
    </div>
    <div class="clearfix time" style="text-align: center;">
        <h6><strong>18 septembre 2014</strong> 13:51</h6>
    </div>
    <div id="m3" class="clearfix received">
        <p>Message ouvert et supprimer pour Xavier - 1</p>
        <span id="o3"></span>
    </div>
    <div class="clearfix time" style="text-align: center;">
        <h6>16:14</h6>
    </div>
    <div id="m5" class="clearfix sent">
        <span id="o5" class="glyphicon glyphicon-ok"></span>
        <p>Message ouvert et supprimer pour Xavier - 2</p>
    </div>
    <div class="clearfix time" style="text-align: center;">
        <h6><strong>23 septembre 2014</strong> 20:01</h6>
    </div>
    <div id="m7" class="clearfix sent">
        <span id="o7" class="glyphicon glyphicon-ok"></span>
        <p>Message non lu</p>
    </div>
    <div id="m9" class="clearfix received">
        <p>Message non lu par X4V1 mais supprimé par Xavier</p>
        <span id="o9"></span>
    </div>
    <div id="m10" class="clearfix received">
        <p>Message non lu</p>
        <span id="o10"></span>
    </div>
    <div class="clearfix time">
        <h6><strong>25 septembre 2014</strong> 17:54</h6>
    </div>
    <div id="m13" class="clearfix sent">
        <span id="o13" class="glyphicon glyphicon-ok"></span>
        <p>test</p>
    </div>
    <div class="clearfix time">
        <h6><strong>26 septembre 2014</strong> 14:18</h6>
    </div>
    <div id="m14" class="clearfix received">
        <p><img src="http://localhost/PrivateChat/public/smilies/Smile.png"></p>
        <span id="o14"></span>
    </div>
    <div class="clearfix time">
        <h6><strong>28 septembre 2014</strong> 00:57</h6>
    </div>
    <div id="m24" class="clearfix sent">
        <span id="o24" class="glyphicon glyphicon-ok"></span>
        <p>salut</p>
    </div><div id="m25" class="clearfix sent">
        <span id="o25" class="glyphicon glyphicon-ok"></span>
        <p>salut2</p>
    </div>
</div>

如果我选择像 m14 这样的特定消息(id 由服务器给出),我必须找到前一个 div,其中包含 h6 标签内的强标签(首先在我的 m14 div 顶部)我可以找到前一个 div 的时间,例如

$('#m'+id).prev('.time')

但它不会检查里面是否有强标签。我可以用这个来完成工作,但我必须使用“for”,而且它比在 jquery 中使用正确的命令慢。

我正在寻找的是在 div.time 内的 h6 内的强标记内获取 html 代码

你知道我怎样才能找到它吗?

最佳答案

在我看来,您想要的是获取具有 time 类的所有前面的 sibling ,然后将它们过滤为仅具有 strong 的 sibling 后代,然后选择最接近原始元素的一个。

$('#m'+id).prevAll('.time').has('strong').eq(0)

关于javascript - 如何找到前一个div中的强项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26106765/

相关文章:

javascript - 将 HTML5 Canvas 保存到服务器上的文件夹中

JavaScript 与 ASP.NET 确认

javascript - localstorage如何保存按钮

javascript - 我可以使用js变量作为mvc数组的索引吗?

javascript - 附加到 dom 元素的 jQuery 单击事件处理程序

javascript - 访问表单字段数组

javascript - 为什么这 => 不将 "this"绑定(bind)到周围的范围?

jquery css 函数不适用于页面刷新

html - 我怎样才能让 .form-check-inline 按钮与其标签分开一行?

javascript - 进入页面时如何转到特定 anchor (不起作用)