我正在使用 jQuery 插件 Jcrop。我对名为 setSelect 的初始设置之一有疑问。
该属性接受一个包含两组 x 和 y 坐标(左上角和右下角)的数组。
<img src="blah" id="cropTool" />
<script type="text/javascript">
$(function()
{
$('#cropTool').Jcrop(
{
setSelect: [
$('#cropTool').width()/4,
$('#cropTool').height()/4,
($('#cropTool').width()/4)*3,
($('#cropTool').height()/4)*3
]
});
});
</script>
从视觉上看,这正是我所期望的。它将裁剪选区放置在左上角 1/4 的位置进入图像(x 和 y),右下角放置在图像的 1/4 位置(从图像的右下角开始)。像这样:
http://www.codetunnel.com/content/images/VisuallyFine.jpg http://www.codetunnel.com/content/images/VisuallyFine.jpg
但是当我去移动它时,它跳到这个位置:
http://www.codetunnel.com/content/images/Jumps.jpg http://www.codetunnel.com/content/images/Jumps.jpg
它立即跳到那里,我不会把它拖到那里。如果我尝试拖动默认选择,它会在移动一个像素或更多像素后跳转。它跳起来后我就可以正常移动它了。这是一个有点小问题,但很烦人。
有任何想法吗?
事实证明我使用的另一个 jQuery 插件干扰了 jcrop 定位。一个名为 colorbox 的插件加载覆盖弹出窗口是问题所在。我在调用 jcrop 之前调用了 jQuery.colorbox.resize() 。当 jcrop 代码运行时,调整大小从未完全完成。一种解决方案是将 jcrop 代码放入setTimeout()
将代码延迟一秒钟。这是一个黑客解决方案,所以我问了另一个更具体的问题并得到了答案。结果 colorbox 的另一个分支包含一个修复程序,在调整大小方法上包含函数回调,以便您可以在调整大小完成时执行代码。
jQuery colorbox 插件调整大小回调 https://stackoverflow.com/questions/6735208/jquery-callback-to-wait-for-code-to-finish-executing-before-moving-on/6738615#6738615
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)