为什么我不能改变Glyphicons?

时间:2014-09-24 17:30:32

标签: javascript html twitter-bootstrap-3 glyphicons

html:

<span class="glyphicon glyphicon-star" data-toggle="collapse" data-target="#demo@(i.tostring)" id="image@(i.ToString)" onclick=diffImage(this)></span>

JAVASCRIPT:

function diffImage(span) {
   var icon = document.getElementById(span.id);
     if (icon.getElementsByClassName("glyphicon glyphicon-star")) {
         icon.className = "glyphicon glyphicon-heart";
         } else {
         icon.className = "glyphicon glyphicon-star";
    }
 }

一次点击之后,它可以从一个星形变为另一个......但在此之后它就不能再变回星形。

如果我改为

if (icon.className("glyphicon glyphicon-star")) {   

将显示

Microsoft JScript runtime error: Function expected

1 个答案:

答案 0 :(得分:0)

第二次类名称不同,所以它不会以相同的方式匹配。

function diffImage(span) {
    var icon = document.getElementById(span.id);
    var className = document.getElementById(span.id).className;
    if (className == "glyphicon glyphicon-star") {
        icon.className = "glyphicon glyphicon-heart";
    } else {
        icon.className = "glyphicon glyphicon-star";
    }
}