IEのjQueryアニメーションに問題があります(私はIE 8でテストします)。サイトはHTML5で書かれていて、内部にimgタグを持つfigureタグがあります。jQuery、HTML 5とIEが間違ったアニメーションを返す
クリックすると図形要素をすべて移動したいので、アニメーション機能では新しい左位置を与えます。 FFで、オペラとクロムは、IE上で問題なく動作します。
IEが200 msに1回HTMLを再描画するようです。私は「遅い」でアニメーションを持っている場合は、「速い一つだけのジャンプがあると最後まで開始位置から3つのジャンプは、あります...
私を助けてください。
ここで私が使用して簡単なコードがあります:
これは図を作成する関数です:
var createElement = function (w, h, left, id, photo, caption, HTMLclass) {
var nid = Math.round(Math.random()*100)*1000 + (id*1);
var figure = $("<figure>").css({"z-index":1,"width":w+"px","height":h+"px","left":left+"px","cursor":"pointer"}).attr("id",(nid+1)).attr("onclick","moveElements(this)").addClass(HTMLclass);
var img = $("<img>").attr("src","photo/co/" + photo).attr("alt", caption).css({"z-index":2,"width":w+"px","height":h+"px"});
var figcaption = $("<figcaption>").text(caption); $("body").append(figure.append(img).append(figcaption));
};
そして、ここでアニメーションを持つループです:
var figures = $("figure").each(function(index) { $(this).animate({"left": newLeft}, "slow"); };
コード? IE8はHTML5を正しくサポートしていますか? –
私はちょうど新しい答えを追加しました – Kania