将2个ASCII字符与javascript进行比较

Compare 2 ASCII characters with javascript

本文关键字:比较 javascript 2个 ASCII 字符      更新时间:2023-09-26

我有一个div如下:

<div class="job-article-holder-click-for-more-link">
    &#x25B2;
 </div>

我的javascript如下:

$('.job-article-holder-click-for-more-link').on('click', function () {
    $(this).html() == "&#x25B2;" ? $(this).html('&#x25BC;') : $(this).html('&#x25B2;');
});

每次检查都失败,为什么?它基本上是一个箭头,当我点击它时,我只是试图将其切换为上下显示。

与其检查实际的HTML,不如使用charCodeAt获取实际字符并检查其ascii(实际上是unicode)值。如前所述,您需要首先修剪内容:

$('.job-article-holder-click-for-more-link').on('click', function () {
    $(this).text().trim().charCodeAt(0) == 9650 ?
        $(this).html('&#x25BC;') : $(this).html('&#x25B2;');
});

html返回的内容中可能有空格。尝试修剪html()输出。

$('.job-article-holder-click-for-more-link').on('click', function () {
    $(this).html().trim() == "&#x25B2;" ? $(this).html('&#x25BC;') : $(this).html('&#x25B2;');
});