私はウェブサイトを作成しており、ウェブページに 3 つの画像を追加して jQuery で回転させようとしています。アニメーションから子要素を除外するための jQuery :not() 関数に関するいくつかの脅威を読みましたが、正しい方法で実行することはできません。問題は、フェードインするために 3 つの背景画像 (に添付されているもの) だけが必要であり、メニュー、ヘッダー、サイト コンテンツなどの他のすべての要素が必要ないことです。これが私のコードです。誰かが私を助けてくれることを願っています。
<script type="text/javascript">
$(document).ready(function()
{
var imgArr = new Array() // relative paths of images
imgArr[0]="images/1.jpg";
imgArr[1]="images/2.jpg";
imgArr[2]="images/3.jpg";
var preloadArr = new Array();
var i;
/* preload images */
for(i=0; i < imgArr.length; i++){
preloadArr[i] = new Image();
preloadArr[i].src = imgArr[i];
}
var currImg = 1;
var intID = setInterval(changeImg, 1000);
/* image rotator */
function changeImg(){
$(".wrapper").not('dont know').animate({opacity: 0}, 1000, function(){
$(this).css('background','url(' + preloadArr[currImg++%preloadArr.length].src +') top center no-repeat');
}).animate({opacity: 1}, 1000);
}
});
</script>
私が必要とするのは、メニュー、段落、サイトコンテンツなどの子要素ではなく、体の背景のみをフェードインするようにアニメーション化することです。提案をありがとう。
Html 部分:
<div class="parent">
<div class="inline_element1">Here goes menu</div>
<div class="inline_element2">Here goes site content</div>
</div>
CSS 部分で:
.parent{
width: 100%;
height: 100%;
margin: 0px auto;
background-image: url(../images/1.jpg);
background-repeat: no-repeat;
background-size: cover;
}
と のように内部のすべての要素ではなく、 のみをアニメーション化する必要があります。前もって感謝します。