私は JavaScript にかなり慣れていないので、これがばかげた質問である場合はご容赦ください。以下のコードを使用して、画像を画面にスライドさせ、さらに 2 つの画像を次々に表示します。これは、Chrome と IE 7-9 で正常に機能します。残念ながら、Firefox では次のようなエラーが表示されます。
move が定義されていません [ mover = setInterval(move, 1000); ]
私のコード:
//define variables
var mover = 0
var bubble1move = 0
var bubble2move = 0
if(mover != 0)
{//interval is finished
function move ()
{
console.log("moving")
clearInterval(mover)
var moving_img = document.getElementById("i_sliding_image")
var left = 0
function frame()
{
left -= 2 // update parameters
moving_img.style.left = left + 'px'// show frame
if (left == -274) // check finish condition
{
clearInterval(id)
bubble1move = setInterval(function() {bubble1()}, 2000);
}
}
var id = setInterval(frame, 10) // draw every 10ms
}
}
if(bubble1move != 0)
{//interval is finished
function bubble1()
{
clearInterval(bubble1move);
document.getElementById("img-bubble1").style.zIndex = "1";
bubble2move = setInterval(function() {bubble2()}, 2000);
}
}
if(bubble2move != 0)
{//interval is finished
function bubble2()
{
clearInterval(bubble2move)
var vBubble2 = document.getElementById("img-bubble2").style
vBubble2.zIndex = "1";
}
}
window.onload = function initialiser()
{
mover = setInterval(move, 1000);//initial time to animation
}
すべての getElementByIds は、画像を含む div タグを取得しています。
御時間ありがとうございます。