1

这不起作用:

<div id="draw">
        <script>
                    $(document).ready( function () {

                        var filler = {
                            'fill': 'white',
                            'stroke': 'white',
                            'stroke-width': '0',
                            'cursor': 'pointer'
                        }

                        var paper = Raphael(100, 296, 175, 5);

                        var rectangle = paper.rect(0, 0, 5, 5);
                        rectangle.attr(filler);
                        rectangle.node.id = 'rectangle';

                        $("#rectangle").hide();
                        $("#rectangle").fadeIn('2000');

                    });
        </script>
</div>

什么都没有显示。如果我只使用 hide() 它会隐藏矩形。但是,我想淡入淡出然后,我尝试使用 #rectangle { display: none; } 在我的 css 文件中,然后使用 fadeIn,但它也不起作用。

我完全不明白我在做什么错。我没有使用remove(),而只使用了hide(),为什么它不会显示?

萤火虫显示style="display:none;" ; . 即使我从我的 css 文件中删除了用于 display none ( #rectangle { display: none; } ) 的 css。

似乎在 hide() 之后你不能使用 fadeIn() 函数,但为什么呢?

在此先感谢您的帮助。

4

2 回答 2

1

你为什么不这样做:

rectangle.attr({opacity: 0});
rectangle.animate({opacity: 1}, 2000);

JSFiddle:http: //jsfiddle.net/wrDGP/

于 2012-07-20T16:37:18.500 回答
0

Raphael 确实只有动画不透明度来模拟fadeIn 和fadeOut。也许未来的一些版本可以实现这一点。只是暂时处理它。祝你今天过得愉快。

于 2012-07-21T06:43:51.193 回答