【发布时间】:2012-08-30 15:46:00
【问题描述】:
我使用 jquery 创建了一个图像节点,并希望将其显示为原始版本之上的更大版本。
复制的图像不会显示在 Chrome 和 Safari 中,但可以在 Internet Explorer 和 Firefox 中显示。控制台不报告错误。检查器显示具有所有正确 css 属性的克隆图像元素,但为元素提供 0 x 0 像素大小。
我没有看到任何暗示 0x0 大小的 css 规则。
这是说明情况的屏幕截图 (http://i.stack.imgur.com/AhiPf.png)
这里有一个演示行为的链接,尝试用 firefox 和 chrome 点击图片: download.toastlab.ch/segtest
编辑:
创建元素的 Javascript 代码:
$('.streamcontent').on('click', 'img.clickable', function () {
var img = new Image();
img.src = $(this).attr('src');
var w = img.width,
h = img.height;
img = $(img).addClass('bigger');
var tw = $(this).width();
var th = $(this).height();
var pos = $(this).position();
var center = {
top: pos.top + th / 2,
left: pos.left + tw / 2
};
img.css({
position: 'absolute',
top: pos.top,
left: pos.left,
width: tw,
height: th,
opacity: 0
}).animate({
top: center.top - h / 2,
left: center.left - w / 2,
height: h,
width: w,
opacity: 1
}, 300, function () {
$('body').one('click', function () {
img.animate({
top: pos.top,
left: pos.left,
width: tw,
height: th,
opacity: 0
}, function () {
img.remove();
});
});
});
$(this).parent().append(img);
});
【问题讨论】:
-
在 chrome 21.0 和 IE 10.0.84 中的页面对我来说是一样的(图像看起来很好)。
-
奇怪,我得到了
Chrome 21.0.1180.83 m:/ -
@MaxPRafferty 只是出于好奇,你有 64 位版本的 chrome 吗? (打开任务管理器并在进程选项卡中搜索
chrome.exe。查看进程名称旁边是否有*32) -
@Roman 我的 chrome 版本是 32 位的。
标签: javascript jquery html webkit