我有一个img元素。当用户将鼠标悬停在它上面时,我想在鼠标附近创建一个新的div,并在div中显示相同的图像 - 就像预览一样。我不想使用现有的插件。有没有简单的方法来实现它?即时创建新元素
Q
即时创建新元素
0
A
回答
0
1
你说你不想重新使用现有的插件 - 我可能会问,为什么?
我相信这thumbnail plugin会照顾你的确切位置后护理。实现这个要求的代码被简化为:
<script>
$("img").thumbPopup({
imgSmallFlag: "_s",
imgLargeFlag: "_l"
});
</script>
1
我同意你的看法,你真的不需要插件的一切。啥子你要做到的是非常简单的:
只要有一个绝对定位的div里面装有HTML页面的图像。给他们spcific IDS,那么,如果您使用的是完全相同的文件缩略图和预览你可以尝试这样的:
$('.thumbnails_class').mousemove(function(e) {
$('#preview_div').css({top: e.pageY, left: e.pageY});
$('#preview_img').attr('src', $(this).attr('src'));
});
我没有测试的代码,但我想这将只是工作精细。如果你没有使用相同的图像两者的缩略图和预览,您仍然可以使用类似的技术,只是使用缩略图的src属性创建预览源:
$('.thumbnails_class').mousemove(function(e) {
$('#preview_div').css({top: e.pageY, left: e.pageY});
$('#preview_img').attr('src', $(this).attr('src').replace(/thumb/, 'preview'));
});
在这个例子中我用文件名中的预览替换单词缩略图。
最后,你需要显示/隐藏预览:
$('.thumbnails_class').mouseover(function() {
$('#preview_div').show();
});
$('.thumbnails_class').mouseout(function() {
$('#preview_div').hide();
});
就是这样。进行必要的调整,你很好去。
相关问题
- 1. 我如何让DOM知道即时创建的新元素?
- 2. 即时创建新表
- 3. 新创建时DOM元素在哪里?
- 4. 检查何时创建新元素
- 5. 创建新的XML元素
- 6. XML - 创建元素 - 新行
- 7. JavaScript重新创建元素
- 8. 以前创建的元素在创建新元素时的娱乐SWT Draw2d
- 9. 在新创建的视频元素中创建/删除元素
- 10. 用outerHTML替换元素并立即访问新创建的元素
- 11. 使用selectAll()创建新元素,同时保留现有元素
- 12. 当创建一个新元素时创建jQuery
- 13. 即时添加jQuery更新元素?
- 14. 即时创建DOM元素 - 检查数据是否有害
- 15. 重点关注即时创建的元素
- 16. 即时创建一个DOM元素,但在淡入淡出
- 17. 创建元素
- 18. mySql没有即时创建新表
- 19. 即时访问新创建的子域
- 20. 即时创建新的流星集合
- 21. 即时创建新的PropertyInfo对象
- 22. 重新创建XSL超链接而不重新创建元素
- 23. VBA:查找新创建的HTML元素
- 24. 使用javascript创建新元素
- 25. jQuery的返回新创建的元素
- 26. 如何用jquery创建新元素
- 27. XmlWriter不在VB.net中创建新元素
- 28. jQuery创建一个新元素
- 29. 绑定pirobox与新创建的元素
- 30. jquery遍历新创建的元素