jquery和sort函数在chrome中不工作,但在firefox中工作?

avwztpqn  于 2022-12-12  发布在  jQuery
关注(0)|答案(2)|浏览(177)

我使用jquery3.6.1的javascript例程来在点击按钮#tri时对div进行如下排序:

$("#tri").click(function() {
        var $divs = $("#resultats div.notice");
        var alphabeticallyOrderedDivs = $divs.sort(function (a, b) {
            return $(a).find("div.bibloc:first").text() > $(b).find("div.bibloc:first").text();
        });
        $("#resultats").html(alphabeticallyOrderedDivs);
    
    });

div的结构如下(在#resultatdiv内):

<div class='notice' class='2022'>
        <div class='internotice'></div>
        <div class='notice_header'>
            <p class='title'><img src='img1.png' /></p>
            <h4>Title1</h4>
            <p>details</br>info</p>
        </div>
        <div class='bibloc'>
            <p class='enrayon'> ref1<span>text</span></p>
        </div>
    </div>
    
    <div class='notice' class='2022'>
        <div class='internotice'></div>
        <div class='notice_header'>
            <p class='title'><img src='img1.png' /></p>
            <h4>Title2</h4>
            <p>details</br>info</p>
        </div>
        <div class='bibloc'>
            <p class='enrayon'> ref2<span>text</span></p>
        </div>
    </div>

它在火狐中工作得很完美,所有的div都用“ref1,ref2 ...”排序
没有其他浏览器我测试想做排序.没有错误消息在控制台,只是不工作
任何想法是什么可能是这个问题的根源?谢谢
尝试了所有的方法,改变或简化html,移动javascript函数,但没有任何效果

bvuwiixz

bvuwiixz1#

对于sort,请指定,并返回1或-1:

return ($(a).find("div.bibloc:first").text()) > ($(b).find("div.bibloc:first").text()) ? 1 : -1;
x7rlezfr

x7rlezfr2#

谢谢彼得·托尼!
该解决方案有效地:

return ($(a).find("div.bibloc:first").text()) > ($(b).find("div.bibloc:first").text()) ? 1 : -1;

相关问题