在浏览器中移动图像元素
Moving image elements in a browser
我正在使用UIZE JavaScript框架在div内移动图像元素。这运行正常。
我想让此功能做另外两件事。
-
自动重置图像的位置,以防用户将图像拖出界外或根本不允许用户将其拖出界外。
-
如果用户将图像拖动到示例页面上此处的预定义位置"绿色框":www.marklaurel.com/sample.php我想显示一个div,询问用户是否要访问相应图像的网站。
我有这个目前由按钮触发的功能:
<script type="text/javascript">
function snapBack()
{
with (document)
{
getElementById('logoUize').style.left = '133';
getElementById('logoUize').style.top = '6';
getElementById('logoPsd').style.left = '240';
getElementById('logoPsd').style.top = '60';
getElementById('logoAfx').style.left = '240';
getElementById('logoAfx').style.top = '206';
getElementById('logoMaya').style.left = '130';
getElementById('logoMaya').style.top = '237';
getElementById('logoHtml5').style.left = '22';
getElementById('logoHtml5').style.top = '194';
getElementById('logoCss3').style.left = '22';
getElementById('logoCss3').style.top = '48';
}
}
</script>
但是,我从浏览器控制台收到此警告:
Warning: Error in parsing value for 'left'. Declaration dropped.
Source File: http://marklaurel.com/sample.php
Line: 0
Warning: Error in parsing value for 'top'. Declaration dropped.
Source File: http://marklaurel.com/sample.php
Line: 0
我可以得到一些帮助来让它工作吗?
133
不是有效的CSS位置。您想要133px
,或者另一个单位,例如 133em
.
(别担心,几年前我犯了这个错误,然后想知道为什么我的网站只能在IE:P中工作)
此错误消息来自这样一个事实,即element.style.left = 'XX';
并不完全是浏览器所期望的。你必须说XX的单位是什么。为此,您将使用诸如element.style.left = 'XXpx'
或element.style.left = 'XXem'
或任何其他单位之类的东西。
有关可用单位的更多详细信息,请参阅规格
相关文章:
- 遍历类元素数组,并在jquery中选择同级元素
- 如何使用css动画/javascript使具有背景图像的元素出现
- 如何在上传前在浏览器中去除图像元数据(javascript)
- 如何获取内部动态加载图像的元素的高度
- 如何使用THree.js和webGL将交互式图像或元素嵌入到全景图像查看器中
- 没有图像的元素上的CSS掩码
- 图像/DIV 元素切换全屏
- 从HTML5 FileApi加载的图像中检索EXIF图像元数据
- 获取包含图像的元素的 $.height() 当图像可能尚未加载时
- 如何将要附加图像的元素传递到image.onload()函数中
- 无法使用exif获取图像元数据的属性
- 对于内部具有动画图像的元素,单击事件将丢失
- 如何覆盖一个没有白色背景图像的元素
- 如何使图像DOM元素响应
- 使用JavaScript编写图像元数据
- 何时检索包含图像的元素的高度
- 简单的方法添加图像的元素上的onclick事件javascript
- 单击鼠标,通过将类名从一个元素传递到下一个元素来更改图像
- 使用Javascript Regex获取元元素属性
- 如何在jQuery中存储多个输入图像的元素