JavaScript (HTML5): HTML タグにクラスを追加、削除、存在確認、トグル

Element.prototype.hasClassName = function(a) {
    return RegExp("(?:^|\\s+)" + a + "(?:\\s+|$)").test(this.className);
};
Element.prototype.addClassName = function(a) {
    if (this.hasClassName(a)) {
        return false;
    } else {
        this.className = [this.className, a].join(" ");
        return true;
    }
};
Element.prototype.removeClassName = function(a) {
    if (this.hasClassName(a)) {
        this.className = this.className.replace(RegExp("(?:^|\\s+)" + a + "(?:\\s+|$)", "g"), " ");
        return true;
    } else {
        return false;
    }
};
Element.prototype.toggleClassName = function(a) {
    var b;
    b = !this.hasClassName(a);
    if (b) {
        return this.addClassName(a);
    } else {
        return this.removeClassName(a);
    }
};

上を事前に読み込んでおいて、こんな風に使います

if (document.getElementById('open-check').hasClassName('open')) {
    document.getElementById('container').addClassName('open');
} else {
    document.getElementById('container').removeClassName('open');
}

(jQuery 使ってたら要らんけどね)