Подтвердить что ты не робот

Простейший способ очистки контейнера с использованием графической библиотеки javascript raphaeljs

Мне нужно очистить и перерисовать главный контейнер raphael javascript. Я пробовал с помощью

var paper = Raphael(10, 50, 320, 200);
paper.remove();  // Doesn't work
paper.node.removeNode();    //this neither
paper.removeNode();   //this neither

Любая идея?

4b9b3361

Ответ 1

На самом деле мне просто приходит в голову, что там гораздо проще paper.clear(); Это не задокументировано.

Ответ 2

Когда вы создаете документ, он создает объект DOM. Вы можете получить доступ к этому с помощью

paper.canvas

Когда вы создаете новый объект Raphael, вы создаете новый объект DOM и оставляете оригинал один! Это лучший способ сделать это, учитывая все. Если вы хотите удалить холст, вам нужно выполнить следующую команду:

//Note: after calling this function the paper object will be useless!
//Make paper object null (or a new paper object) immediately!
function clearPaper(paper){
    var paperDom = paper.canvas;
    paperDom.parentNode.removeChild(paperDom);
}

Ответ 3

с последним gRaphael 0.5.1, я легко очищаю диаграмму, просто вызывая метод clear(). то есть.

var r = Raphael(...)
r.clear();

Но я не уверен, что это сработает для вашей версии

Ответ 4

Да! вы должны пахать до конца документов.

(
function (local_raphael) 
{
/*Put your little bit of Rap code in here*/ 
var paper = local_raphael(10, 10, 320, 200); 
}
)(Raphael.ninja());

http://www.irunmywebsite.com/raphael/raphaelsource.html