色々調べてもわからなかったため質問させていただきます。
以下 ソースです。
//Javascript
const mainImageRoom = [
'img/main_image.jpeg',
'img/image_pic00.jpg',
'img/image_pic01.jpg',
'img/image_pic02.jpg',
];
let currentNum = 0;
const mainImage1 = document.getElementById('main_image1');
const mainImage2 = document.getElementById('main_image2');
const rightArrow = document.getElementById('right_arrow');
const leftArrow = document.getElementById('left_arrow');
function setMainImage1(){
mainImage1.src = mainImageRoom[currentNum];
}
function setMainImage2(){
mainImage2.src = mainImageRoom[currentNum];
}
setMainImage1();
rightArrow.addEventListener('click', () => {
currentNum++;
if(currentNum === mainImageRoom.length){
currentNum = 0;
}
if(currentNum%2 === 0){
setMainImage1();
mainImage1.classList.add('fadein');
mainImage1.classList.remove('fadeout');
mainImage2.classList.add('fadeout');
mainImage2.classList.remove('fadein');
} else {
setMainImage2();
mainImage2.classList.add('fadein');
mainImage2.classList.remove('fadeout');
mainImage1.classList.add('fadeout');
mainImage1.classList.remove('fadein');
}
});
leftArrow.addEventListener('click', () => {
currentNum--;
if(currentNum < 0){
currentNum = mainImageRoom.length-1;
}
if(currentNum%2 === 0){
setMainImage1();
mainImage1.classList.add('fadein');
mainImage1.classList.remove('fadeout');
mainImage2.classList.add('fadeout');
mainImage2.classList.remove('fadein');
} else {
setMainImage2();
mainImage2.classList.add('fadein');
mainImage2.classList.remove('fadeout');
mainImage1.classList.add('fadeout');
mainImage1.classList.remove('fadein');
}
});
//leftArrow,rightArrowにはcssにてcursor: pointer;をつけてます。
fadein,fadeoutクラスを2つの画像に交互につけてスライドショーを制作しています。
画像サイズはどれも200kB程度。
Googlechrome、Edge、androidでは可動確認できています。
また同じページのコードで別のeventListenerは動いているのでjsファイルは読み込んでいるようです。
試して反応なかった機種はiphone6s、2台です。
Javascriptの設定、キャッシュ、cookie、ブラウザ、再起動、アップデート、やれることはすべてやったつもりです!
わかる方いらっしゃいましたら、お力添えをお願いします。
また、構文を見てめんどくさいやり方してるね、こうしたら?ってのもあればぜひ聞きたいです。
回答1件
あなたの回答
tips
プレビュー