<script type="text/javascript">
$(function() {
$('#WaterMark').draggable(
{
start: function(e, ui) {
},
cursor: 'move',
zIndex: 2700,
revert: 'invalid',
containment: '#OriginalImageContainer'
});
$('#OriginalImage').droppable({
hoverClass: 'DroppableOver',
drop: InitializeWaterMark
})
});
var InitializeWaterMark = function() {
var position = $('#WaterMark').position();
var imgPosition = $('#OriginalImageContainer').position();
document.getElementById('xpos').value = position.left - imgPosition.left;
document.getElementById('ypos').value = position.top - imgPosition.top;
}
</script>
这是我在asp.net网页中拖放图片时获得的示例javascript代码...但它返回错误,指出&#39; $&#39;未定义 ..请帮帮我
答案 0 :(得分:5)
猜测一下,我会说你错过了那个支持该脚本的库(可能是jQuery)。
您需要包含对JavaScript框架的引用,以便获得您正在寻找的可拖动功能。
尝试将以下内容添加到您的页面中(在示例中的脚本块之前):
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.7.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.js"></script>
答案 1 :(得分:1)
如果它是jquery包含问题,那么将此标记放在aspx页面的头部并编辑脚本标记中的src属性以指向您的jquery.js副本。例如,如果jquery.js与HTML文件位于同一目录中,则可以使用:
下载自己的jQuery副本如果你做得对,那么再解释一下这个场景......
答案 2 :(得分:1)
在页面中包含您的jQuery和jQuery UI脚本。我倾向于使用CDN(内容交付网络)http://www.asp.net/ajaxlibrary/cdn.ashx中的jQuery和jQuery UI文件 此外,我有一个备份CDN可能会关闭。
<script src="//ajax.aspnetcdn.com/ajax/jquery/jquery-1.6.2.min.js"></script>
<script> window.jQuery || document.write('<script src="/scripts/jquery-1.6.2.min.js"><\/script>')
然后与jQuery UI库相同。
如果CDN发生故障,那么它会检查jQuery是否存在,然后再使用本地版本。