このAjax投稿リクエストがあります。クロムでうまく機能します。IEで開いただけで完全に失敗します。カルーセルに読み込まれた画像を含む div です。使用されるカルーセルはhttp://caroufredsel.dev7studios.com/です(誰かが画像カルーセルを求めている場合は、簡単に実装できるため、これを強くお勧めします)
フォルダをクリックすると
<a href="javascript:void(0);" onclick="getImages(1)">Folder 1</a>
基本的にphpファイルを照会し、新しい画像セットでdivを更新します
$.ajaxSetup ({
cache: false,
async: false
});
function getImages(id)
{
$.ajax({
type: "POST",
url: 'getImage.php',
dataType: "json",
data: "id=" + id,
success: function(data) {
$('#scrolimg').html(data);
$("#car1").carouFredSel({
auto : false,
items : 4,
scroll : 4,
circular : false,
infinite : false,
prev : "#foo1_prev",
next : "#foo1_next",
swipe : {
onTouch : true,
onMouse : false
}
});
}
});
Stack で同様の問題を読んでいると、ほとんどの人がキャッシュを false および async にすると言いますが、それは役に立ちませんでした。別の解決策は、GET の代わりに POST リクエストを作成することでしたが、それもうまくいきません。
上記のコードは完全に機能します。 問題は getImage.php ファイルにあります。PHP関数呼び出しgetimagesize()で画像の幅と高さを見つけるために実行されているループがあります
その機能は IE では実行されていませんが、他のすべてのブラウザーでは完全に機能しています。私の Ajax はこの関数の実行をブロックしていますか?
<?php do {
$image = $_SERVER['DOCUMENT_ROOT']."/images/uploads/".$row_rs_image['thumbfile'];
list($width, $height)= getimagesize($image);
?>
<img src="/images/uploads/<?php echo $row_rs_image['thumbfile']; ?>" width="<?php echo $width;?>" height="<?php echo $height;?>" />
<?php } while ($row_rs_image = mysql_fetch_assoc($rs_image)); ?>
ソースを出力すると、次のように表示されます
<img name="creed" src="/images/uploads/320623-1358872780_thumb.png" width="" height="" />