次のWebサイト http://kxip.in とまったく同じ方法で、ページの背景画像を左から右に移動させたいのですが、これを実現する方法を提案してください。
ありがとう&よろしく
挑戦的な解決策で興味深い質問。ありがたいことに、 stackoverflow.com があなたの仕事を手助けするためにここにあります!
明らかに、jQueryが必要になります!そこで、jQueryをいくつか取得して、戻ってきます。
バック?すごい。
始めましょう。まず、次の行をコードに追加します。
_$(function(){
})
_
それで、その_$
_の魔法のものは何ですか?実際にそれを学んでいることを気にしないでください!学ぶためではなく、答えを得るためにここにいます!しかし、気になるタイプの場合は、新しいタブを開いて、stackoverflow.comで「これは$(function(){ })
について」と質問してください。誰かがあなたを記入します! JQUERYにタグを付けることを忘れないでください!
では、背景画像をアニメーション化したいと思います。 [〜#〜]タフ[〜#〜]。もちろん、これを行う方法はたくさんありますが(HTML、CSS、JAVASCRIPTには常に複数の方法があります!)しかし、私はJQueryの方法を好みます。上に奇妙なドル記号のものを覚えていますか?それに戻りましょう!
_$(function(){
setInterval(function(){
}, 500);
})
_
いくつかのプログラムを追加しました! setIntervalは、最大500ミリ秒をカウントし、内部でコードを実行するカウンターです。なぜ500?わからない、私は マジックナンバー が好きだ。したがって、timerjiggymathingがあり、さらにいくつかのプログラムが必要です。背景を追加するにはどうすればよいですか?
_$(function(){
setInterval(function(){
$('body').css('background-position', '0 0');
}, 500);
})
_
わかりました、今、私たちはどこかに着いています!私たちのjQueriesは実際には背景位置を0、0に設定しています。まだそれほど興味深いものではありません。もう少しできるか見てみましょう。
_$(function(){
var x = 0;
setInterval(function(){
x-=1;
$('body').css('background-position', '0 ' + x + 'px');
}, 500);
})
_
試してみましょう!
ちょっと、あなた。その画像は大きすぎて、愚かな子猫が上がっています!コードに戻ります。
_$(function(){
var x = 0;
setInterval(function(){
x-=1;
$('body').css('background-position', x + 'px 0');
}, 500);
})
_
ああ、もっと好きです!しかし、男...それはひどく遅いですか?アップグレードしましょう!
_$(function(){
var x = 0;
setInterval(function(){
x-=1;
$('body').css('background-position', x + 'px 0');
}, 10);
})
_
OH SNAPPPPPP。スクロールするkittenzを入手しました! JavaQuery
はすごい!
正直なところ、その背景画像は正義を行っていません。それを更新する時が来ました!
そうそう、今私たちは蹴っている!
SO、それがあります!あなたがやりたいことを行うための多くの方法の1つ。
幸運を。楽しんで。
これがCSSソリューションです:
body {
background: url(http://kxip.in/images/mohalistadium.jpg) repeat;
-webkit-animation: loader 16s steps(100) infinite;
-moz-animation: loader 16s steps(100) infinite;
-ms-animation: loader 16s steps(100) infinite;
-o-animation: loader 16s steps(100) infinite;
animation: loader 16s steps(100) infinite;
}
@-webkit-keyframes loader {
from {
background-position: 0;
}
to {
background-position: -1600px 0;
}
}
@-moz-keyframes loader {
from {
background-position: 0;
}
to {
background-position: -1600px 0;
}
}
@-ms-keyframes loader {
from {
background-position: 0;
}
to {
background-position: -1600px 0;
}
}
@-o-keyframes loader {
from {
background-position: 0;
}
to {
background-position: -1600px 0;
}
}
@keyframes loader {
from {
background-position: 0;
}
to {
background-position: -1600px 0;
}
}
それは簡単です!単純なJavaScriptを使用してください!
コード:
<html>
<head>
<title>BackGround Slide</title>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
// speed in milliseconds
var scrollSpeed = 70;
// set the default position
var current = 0;
// set the direction
var direction = 'h';
function bgscroll() {
// 1 pixel row at a time
current -= 1;
// move the background with backgrond-position css properties
$('body').css("backgroundPosition", (direction == 'h') ? current + "px 0" : "0 " + current + "px");
}
//Calls the scrolling function repeatedly
setInterval("bgscroll()", scrollSpeed);
</script>
<style type="text/css">
body {
background-image: url('http://kxip.in/images/mohalistadium.jpg');
}
</style>
</head>
<body>
</body>
</html>
いくつかのjs/jQueryを使用します。
function move(){
var element = $('#selector');
element .css('background-position-x', (parseInt(element.css('background-position-x') - 10));
//Check if need to reset background-position-x to Origin.
}
これを実現する最も簡単な方法は、Javascriptを少し使用することだと思います。ここで例として使用するJavaScriptを見つけることができます http://kxip.in/js/background-moving.js
// speed in milliseconds
var scrollSpeed = 70;
// set the default position
var current = 0;
// set the direction
var direction = 'h';
function bgscroll() {
// 1 pixel row at a time
current -= 1;
// move the background with backgrond-position css properties
$('div.background-image').css("backgroundPosition", (direction == 'h') ? current+"px 0" : "0 " + current+"px");
}
//Calls the scrolling function repeatedly
setInterval("bgscroll()", scrollSpeed);
ただし、これはおそらく機能しないので、単にコピーして貼り付けないでください。
hTML5でMarqueeタグを使用できます。例は http://www.quackit.com/html/codes/html_Marquee_code.cfm で確認できます。