我有一组具有设置的图像draggable=true
。这些图像旨在被拖放到谷歌地图视图上,并在放置位置创建一个标记。为了防止地图上出现重复图像,我想禁用可拖动设置并更改不透明度。
我的地图可拖放和照片可拖动处理程序是
$("#photo"+i).draggable({
helper: "clone",
cursor: "move",
containment: 'body',
start: function(e){
$(this).addClass("fade");
currentPhoto = $(this);
}
});
$("#map").droppable({
drop: function(e){
var point = new google.maps.Point(e.pageX, e.pageY);
var data = {
"location": overlay.getProjection().fromDivPixelToLatLng(point),
"photo": currentPhoto
}
makeMarkers(data.location, $(data.photo).attr("src"), $(data.photo).attr('id'));
}
});
在内部makeMarkers
,该type
值用于确定标记是在页面加载时从数据库检索值创建的,还是作为被拖动照片图像的 ID。
function makeMarkers(location, title, type){
//variable and marker initialization here
if (type == "onload")
newMarker.setIcon(savedLocation);
else {
newMarker.setIcon(unsavedLocation);
$("img."+type).attr("draggable", "false");
$("img."+type).attr("opacity", "0.5");
console.log("Disabling draggability of " +type);
}
//marker event handlers here
}
我可以拖放图像并在该位置创建一个新标记。但是,图像属性不变。如何启用该功能