【发布时间】:2012-11-23 09:02:42
【问题描述】:
这段代码在将图像拖入 div 元素后将图像添加到 DOM。
var showImage = function (ev) {
var file = ev.target.file;
var thumb = new Image(100,100);
thumb.src = ev.target.result;
thumb.className = 'thumbFoto';
thumb.title = file.name;
thumb.alt = file.name;
var anchor = document.createElement('a');
anchor.className = 'thumbLink';
anchor.href = ev.target.result;
anchor.rel = 'album1';
anchor.title = file.name;
anchor.appendChild(thumb);
dropZone.appendChild(anchor);
}
此代码使用
链接到页面<script type="text/javascript" src="js/code.js"></script>
图片添加到网页后,我想使用 Fancybox 预览它们。 当页面加载时(在我将任何图像拖到它上面之前),这个脚本在 html-header 中执行:
<script type="text/javascript">
$(document).ready(function() {
/* Apply fancybox to albums */
$("a.thumbLink").fancybox();
});
</script>
现在如何确保可以使用 Fancybox 预览最近添加的图像?
【问题讨论】:
-
如何拖动图像?您应该在
stop()拖动事件上调用$("a.thumbLink").fancybox();。 -
如果您使用的是fancybox v1.3.4,该版本不支持动态添加元素。检查stackoverflow.com/a/9084293/1055987 以获得解决方法。 2.x版本使用
live,所以只需要正常初始化fancybox即可。
标签: javascript dom dom-events fancybox