我有一个奇怪的问题。感谢Chris在css-tricks.com使用CSS Anything滑块,我使用jQuery来提取要在滑块中显示的图像的XML提要:
$.post('feedURL', {},function(data){
var slides = $(data).find('slides');
for(var i = slides.length -1;i>=0;i--){
var obj = $(slides[i]);
var image = obj.find('ImageURL').text();
var str = ' <li>';
str += ' <img src="'+ image +'" />';
str += ' </li>';
$(str).find('img').one('load complete', function() {
imageResize();
}).end().appendTo($("#slider")); // Slider is a UL element on the page
}
});
图像加载后,我运行图像调整大小功能。我的图像以各种不同的大小随机上传,这就是调整大小功能的原因。
function imageResize() {
// Create the correct aspec ratio for images that are too large.
$('#slider li img').each(function() {
var maxWidth = 417; // Max width for the image
var maxHeight = 313; // Max height for the image
var ratio = 0; // Used for aspect ratio
var width = $(this).width(); // Current image width
var height = $(this).height(); // Current image height
// Check if the current width is larger than the max
if(width > maxWidth){
ratio = maxWidth / width; // get ratio for scaling image
$(this).css("width", maxWidth); // Set new width
$(this).css("height", height * ratio).css("margin-top", (maxHeight - height * ratio) / 2); // Scale height based on ratio
height = height * ratio; // Reset height to match scaled image
width = width * ratio; // Reset width to match scaled image
}
// Check if current height is larger than max
if(height > maxHeight){
ratio = maxHeight / height; // get ratio for scaling image
$(this).css("height", maxHeight); // Set new height
$(this).css("width", width * ratio).css("margin-top", "0"); // Scale width based on ratio
width = width * ratio; // Reset width to match scaled image
}
});
}
我的Feed中的图像很好,但有些图像会旋转到一边。
这是奇怪的部分。当您从Feed中查看图片网址并在新窗口中显示时,Feed中的实际图片会在其侧面旋转,但仅针对浏览器Chrome和Firefox进行旋转,但它是 NOT 在Safari中旋转。无论是浏览器,在实际的幻灯片放映中,它们总是旋转到一边。
如果我右键单击并将图像从Feed保存到我的桌面,图像会保存在正面并 NOT 旋转。
世界上发生了什么?任何人都有线索?
答案 0 :(得分:1)
这是我在Feed中获得的图片文件中的元数据。拍摄照片文件后,将其旋转几次,然后将其旋转回正常并保存,它就会开始显示在我的Feed中。