如何将字符串与 JavaScript 中的 html 标记匹配?

How to match a String with html Markup in JavaScript?

我正在尝试制作一个控制边栏的可点击元素。元素的 html 文本应更改为 << 或 >>,具体取决于边栏是否可见。 我想出了以下代码

JavaScript:

$j("#id_button").click(function(){
    $j(".sidebar").fadeToggle();        
    $j("#id_button").html() === ("&lsaquo;&lsaquo;") ?  $j("#id_button").html("&rsaquo;&rsaquo;") : $j("#id_button").html("&lsaquo;&lsaquo;");
}); 

和对应的html:

<a id="id_button">&lsaquo;&lsaquo;</a>

当我使用纯文本而不是 MarkupEntities 时,代码工作正常。例如:"&lsaquo;" 的 "left" 和 "&rsaquo;" 的 "right" 但是使用实体不起作用,因为字符串 "&lsaquo;&lsaquo;" 无法与什么匹配。html() returns.

可以直接使用箭头吗?

jQuery("#id_button").click(function() {
    var button = jQuery(this);
    var left=  "‹‹";
    var right = "››";
    // $jQuery(".sidebar").fadeToggle();        

   button.html() ===  left ?  button.html(right) :  button.html(left);
}); 

工作fiddle