0

次のJavaScriptコードがあります:

$(document).ready(function() {
    var paper = new Raphael(document.getElementById('canvas_container'), 1000, 1000);
    var tetronimo = paper.path("M 700 700 l 0 -50 l -50 0 l 0 -50 l -50 0 l 0 50 l -50 0 l 0 50 z");
    tetronimo.attr({  
        gradient: '90-#526c7a-#64a0c1',
        stroke: '#3b4449',
        'stroke-width': 10,
        'stroke-linejoin': 'round',
        rotation: -90
    });
});

HTMLはここにあります:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta charset="utf-8">
        <title>Raphael Test</title>
        <script type="text/javascript" src="js/libs/jquery.js"></script>
        <script type="text/javascript" src="js/libs/raphael.js"></script>
        <script type="text/javascript" src="js/test.js"></script>
        <link href="css/screen.css" rel="stylesheet" />
    </head>
    <body>
        <div id="canvas_container"></div>
    </body>
</html>

多くのブラウザーでうまく機能しますが、グラデーションの背景は IE7 と IE8 では機能しません。それに対する解決策は何ですか?

4

1 に答える 1

4

ドキュメントページに基づいて理解しました。gradientプロパティ (古いバージョンのライブラリ) を使用する代わりに、プロパティを使用する必要がありfillます。

var tetronimo = paper.path("M 700 700 l 0 -50 l -50 0 l 0 -50 l -50 0 l 0 50 l -50 0 l 0 50 z");
tetronimo.attr({  
    fill: '90-#526c7a-#64a0c1',
    'fill-opacity': 0.5,
    stroke: '#3b4449',
    'stroke-width': 10,
    'stroke-linejoin': 'round',
    rotation: -90
});
于 2013-01-08T06:41:44.030 に答える