0

drawImage() を使用してキャンバスにメイジを描画し、その可視性を false に設定しました。クリックとマウスオーバーで表示されるようにします。私はどのように行いますか ?ありがとう

ここまで書いてきましたが、もちろんうまくいきません

$('#scene').drawImage({

            source:'files/gp/js/bigview/avg/aileav.png',
            name:'aileavg',
            x:198,
            y:76,
            width:110,
            height:106,
            fromCenter: false,
            layer: true,
            visible:false,              
            click:function(layer){
                visible:true
                }

    })  
4

2 に答える 2

0

jCanvas では、visibleプロパティを使用してレイヤーの可視性を無効にすると、そのレイヤーが描画されなくなります (したがって、マウス イベントに応答しなくなります)。

レイヤーを非表示にしてイベントに応答する場合は、このopacityプロパティが理想的なソリューションです。メソッドを使用しsetLayer()てプロパティの値を更新する必要がありopacityます (値を に設定する0と、画像が非表示になります)。drawLayers()この変更をキャンバスに表示するには、後でメソッドを呼び出す必要があることに注意してください。

$('#scene').drawImage({

    source: 'files/gp/js/bigview/avg/aileav.png',
    name: 'aileavg',
    x: 198,
    y: 76,
    width: 110,
    height: 106,
    fromCenter: false,
    layer: true,
    opacity: 0,          
    click: function (layer) {
        $(this).setLayer(layer, {
            opacity: 1
        })
        .drawLayers();
    }

});
于 2014-10-10T00:51:34.003 に答える
0

キャンバスはそのようには機能しません。キャンバスはオブジェクト コンテナーではありません。キャンバスのように機能します。キャンバスに画像を描画すると、画像は画像ではなくなり、ピクセルの集まりになります。

キャンバスから何かを消したいときは、別のものを重ね塗りして消去するか、キャンバス全体を消去してそのオブジェクト以外をすべて描き直す必要があります。

于 2014-08-03T01:26:27.313 に答える