2016-07-10 7 views
0

はbodyタグで全身をアニメーション化することなく、カーソル画像にCSS3のトランジションを追加することが可能ですCSS3は、おそらくどこかにクラスを追加...

をカーソル遷移を追加しますか?

.cursor { cursor: url("/images/light1_CROP.png"), auto; 
    animation-iteration-count: infinite; 
    animation-name: changewidth; 
    animation-direction: alternate; 
    animation-duration: 4.1s; 
} 
[...] 

動作しません ... CSSのcursorプロパティで指定した画像をアニメーション化することはできません

+0

達成しようとしていることは完全にはっきりしていません。まず、「全身をアニメ化しない」という意味は何ですか?次に、あなたのコードから、あなたがアニメーション化しているdiv .cursor'を持っているように見えます。そして、あなたがそのdivをホバリングしているときにカーソルイメージを変更したいのです。しかし、あなたの記述は、実際にカーソルイメージ自体をアニメートすることを意味しています。該当する場合はHTMLコードを追加してください。 – mmgross

+0

divにホバリングしないで、私は体内のカーソルだけをアニメーションしたいが、私は体にクラスを追加するときに全身をアニメートし、単にgifを使わずにカーソル自体をアニメ化する... – Shorty

答えて

0

:あなたは、カーソルのプロパティをアニメーション化することはできません。さらに、アニメーションがページ上でいくつかのdivになっていてカーソル自体ではないので、あなたがそれをやろうとしたやり方はうまくいかない。 通常のカーソルを非表示にしたり、カーソルイメージをdiv内に配置したり(私の例では、バックグラウンドイメージとして選択します)、カーソルと共に移動することができますjavascript。

これで、好きなようにカーソル - divをアニメートできます。

$(document).mouseenter(function() { 
 
    $('.cursor').show(); 
 
}); 
 
$(document).mouseleave(function() { 
 
    $('.cursor').hide(); 
 
}); 
 
$(document).mousemove(function(e) { 
 
    var posX = e.pageX - 19, 
 
    posY = e.pageY - 21; 
 
    $('.cursor').css({ 
 
     left: posX + 'px', 
 
     top: posY + 'px' 
 
    } 
 
); 
 
});
.cursor { 
 
    background-image: url("http://stormfall.linuxweb.net/images/light1_CROP.png"); 
 
    width: 39px; 
 
    height: 42px; 
 
    animation-iteration-count: infinite; 
 
    animation-name: changewidth; 
 
    animation-direction: alternate; 
 
    animation-duration: 4.1s; 
 
    position: absolute; 
 
    display: none; 
 
    top: -21px; 
 
    left: -19px; 
 
} 
 

 
body { 
 
    cursor: none; 
 
} 
 

 
@keyframes changewidth { 
 
    from { 
 
    -ms-transform: scale(0.5, 0.5); 
 
    -webkit-transform: scale(0.5, 0.5); 
 
    -moz-transform: scale(0.5, 0.5); 
 
    transform: scale(0.5, 0.5); 
 
    } 
 
    to { 
 
    -ms-transform: scale(1.5, 1.5); 
 
    -webkit-transform: scale(1.5, 1.5); 
 
    -moz-transform: scale(1.5, 1.5); 
 
    transform: scale(1.5, 1.5); 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
Move your mouse here... 
 
<div class="cursor"> 
 
</div>

しかし1つの欠点がある:これは限りカーソルのdivは、すべてのクリックのようになりますので、あなたが何をクリックしたくないとして働くので、あなたならばあなたのページにリンクやボタンのようないくつかのクリック可能な要素がある場合は、カーソルdivからその下にあるすべてのクリックイベントをリダイレクトする方法を見つけなければなりません。

+0

正確に私が必要としていること、ありがとう、なぜ私はそれについて考えなかったのですか?) – Shorty

+0

クリック可能です... – Shorty

+0

hide class onクリック可能な要素??またはz-indexを変更する... – Shorty

0

。 しかし、間隔ごとに画像を変更することで、JavaScriptを使用して行うことができます。それは前に指摘したように

チェックthis

+0

ありがとう試してみてください.. – Shorty

+0

https://jsfiddle.net/bks6r2bt/4/ – Shorty

関連する問題