5

我想从我的画布中删除所有元素,除了我点击的那个。我创建了一个集合,将所有元素放入其中并删除该集合:

button.click(function () {
    var to_remove = paper.set();    
    paper.forEach(function (el) {
        to_remove.push(el);
    });         
    to_remove.remove();
});

但是我没有成功测试我的元素是否是我的按钮。

阿克塞尔

4

1 回答 1

1

您可以简单地缓存单击的元素并在循环期间进行比较。

button.click(function() {
    var clickedEl = this,
        toRemove = paper.set();

    paper.forEach(function(el) {
        if (el !== clickedEl) {
            toRemove.push(el);
        }
    });

    toRemove.remove();
});​

演示:http: //jsfiddle.net/yRNNe/

于 2012-12-19T22:32:49.357 回答