Javascript 试图在输入为空时清除raphael纸张

Javascript 试图在输入为空时清除raphael纸张,javascript,jquery,input,raphael,Javascript,Jquery,Input,Raphael,我终于让这东西按我想要的方式工作了。它是一个进度条,根据用户在表单中的输入而增加。唯一的问题是,我想用我假设的paper.clear()清除这篇论文当输入字段为空时。但是,它目前在纸上留下一个状态栏(一个瓶子)。这里是jsfiddle链接 更新:我复制了错误的代码,我现在已经更改了。Ugg 代码呢 var paper = Raphael(document.getElementById("notepad"), 500, 500); function drawBottles(count)

我终于让这东西按我想要的方式工作了。它是一个进度条,根据用户在表单中的输入而增加。唯一的问题是,我想用我假设的
paper.clear()清除这篇论文当输入字段为空时。但是,它目前在纸上留下一个状态栏(一个瓶子)。这里是jsfiddle链接

更新:我复制了错误的代码,我现在已经更改了。Ugg

代码呢

    var paper = Raphael(document.getElementById("notepad"), 500, 500);

function drawBottles(count) {
    for (i = 0; i < count; i++) {

       var randomNumber3 = Math.floor(Math.random()*25);
       var path_a = paper.path("M242.07,270.119c0,0-14.596-30.606-7.625-35.793 c3.864-2.876,2.145-18.561,1.832-18.784c-0.313-0.224-1.839-0.319-1.839-0.319c-1.555-0.192-0.201-3.456-0.201-3.456 s0,0-0.598-0.352c-0.598-0.351,1.129-1.345,1.129-1.345c3.738-2.785,10.449-2.983,11.126-2.344c0.677,0.64-0.354,1.44-0.354,1.44 s0.73,0.832,1.333,2.111c0.604,1.28-0.792,1.665-0.792,1.665c1.852,6.718,9.877,14.935,9.877,14.935 c4.795,0.589,7.7,10.683,7.7,10.683l6.271,22.746C269.929,261.307,263.641,270.119,242.07,270.119z");
       path_a.attr({fill: 'none',stroke: '#231F20',"stroke-width": '3',"stroke-miterlimit": '10','stroke-opacity': '1'}).data('id', 'path_a');
       path_a.translate(i*30, 10);
       path_a.rotate(randomNumber3);

    }//end of for statement
}

$("input").keyup(function() {
    var value = parseInt($(this).val());
    paper.clear();
    if (value > 60) {
        drawBottles(3);
    }else if( value > 30){
        drawBottles(2);        
    } else if(value != 0  && 0 != value.length) {
        drawBottles(1);
    }//end of else statement
});
var paper=Raphael(document.getElementById(“记事本”),500500);
功能抽瓶(计数){
对于(i=0;i60){
抽瓶(3);
}否则,如果(值>30){
抽瓶(2);
}else if(value!=0&&0!=value.length){
抽水瓶(1);
}//else语句结束
});

一种方法是在parseInt()之前检查$(this).val()的长度。如果长度为零,请清除纸张并存在keyup函数:

 $("input").keyup(function() {
   var val = $(this).val();
   if (val.length == 0){
      paper.clear();
     return;        
   }
   ...
你可以在这里看到它的作用: