制表符香草javascript

时间:2012-05-15 09:00:50

标签: javascript tabs

我遇到一个小问题,我无法从“块”组中删除所选的类。当我点击每个标签X时,它应清除任何“块”元素上的“选定”类并应用然后将“选定”类应用于单击的选项卡的parentNode。

我一直收到错误,“Uncaught TypeError:无法调用方法'删除'未定义”。以下是jsfiddle http://jsfiddle.net/kas187/r4HLd/1/

中的示例

1 个答案:

答案 0 :(得分:0)

尝试:

window.addEventListener('DOMContentLoaded', function() {
    Array.prototype.slice.call(document.querySelectorAll('.block .tab')).forEach(function (el) {
        el.addEventListener('click', function() {
            document.querySelector('.block.selected').classList.remove('selected');
            this.parentNode.classList.add('selected');
        }, false);
    });
}, false);​

演示:http://jsfiddle.net/QGZvN/3/

或者,如果你不喜欢 slice-method

// inside the for-block
tabbedblocks[i].querySelector('.tab').addEventListener('click', function() {
  document.querySelector('.block.selected').classList.remove('selected');
  this.parentNode.classList.add('selected');
}, false);