0

ウェブサイトの背景画像を変更するためにこれを試しましたが、残念ながら機能しません。悲しいことに、コンソールは何が問題なのかについての手がかりを与えてくれません。だから私はアイデアを使い果たしました。誰かが助けてくれることを願っています。私がやろうとしているのは、画像の配列に基づいて Web サイトの背景にある画像を回転させることです。なぜ機能しないのか、私にはわかりません (背景のカバー プロパティが邪魔をしているのかもしれません)。私はこれに何時間も取り組み、コードを変更して機能するようにしました。最初に配列に new Image() コンストラクターを設定せずにそれを行いましたが、それを修正する必要があると考えました。そうしないと、ブラウザーに操作する dom ノードがない可能性があるためです。しかし、私はまだ立ち往生しています。(ほとんどのコードは、まさにこの Web サイトの回答に基づいています。

$(document).ready(function() {
fondos = new Array('/Foto_Pimend/activos/flickr_foto_fondo_1.jpg',     '/Foto_Pimend/activos/flickr_foto_fondo_2.jpg',     '/Foto_Pimend/activos/flickr_foto_fondo_3.jpg');
cargar_fondos=new Array();
fondo_num = 1;
var i;
for(i=0; i<fondos.length; i++) {
cargar_fondos[i]=new Image();
cargar_fondos[i].src=fondos[i]; 
}
function rotarFondos() {
$('.fondo_intro').css({'background':'url("'+cargar_fondos[fondo_num++     %cargar_fondos.length].src+'") no-repeat 50% 100% cover'},'slow');
}
intId=setTimeout(rotarFondos, 10000);
});

プログラムで変更しようとしている div には、次のスタイルがあります。

.fondo_intro {background: url(/Foto_Pimend/activos/flickr_foto_fondo_1.jpg) no-repeat;     width:100%; background-size:cover; background-position:50% 100%;position:fixed;     height:100%;}

また、次のように、コンテンツを変更するために使用するクリック イベントに関数をリンクしてみました。

$('.link_manejador').click(function() {
var content = $(this).attr('name')+'_template';
llamada_contenido(content); rotarFondos();  
});

そうすれば、回転する背景の代わりに、コンテンツに応じて背景が変化します。さらにイライラするのは、コンソールにエラーや何が起こっているのかについてのヒントが表示されないことです。画像が作成され、カウンター (fondo_num) が増えているのがわかりますが、何も起こりません。さらに: コンソールで発行すると:

$('.fondo_intro').css({'background-  image':'url(/Foto_Pimend/activos/flickr_foto_fondo_2.jpg'},'slow')

何も起こりません。だから私は何かを理解していません、非常に明確です。

4

1 に答える 1

1

Remove "cover" from this line of code:

$('.fondo_intro').css({'background':'url("'+cargar_fondos[fondo_num++ %cargar_fondos.length].src+'") no-repeat 50% 100% cover'},'slow');

于 2013-08-09T03:34:46.907 に答える