javascript - 通过 javascript 按钮单击事件中的 URL 操作加载图像时如何解决此问题
问题描述
我通常不会在这里提问,但这个问题已经困扰了我很长一段时间。
我遇到的问题是将图像加载到新图像对象的源中时,直到第二次尝试才加载。
我对此进行了进一步研究,我相信正在发生的事情是:它第一次加载图像很好,但无论出于何种原因,它只是在按钮单击结束时缓存图像。这意味着在第一次尝试时,它没有可加载的内容,但在第二次尝试时,它只是脱离了新缓存的图像。
可以在下面看到javascript:
$(document).on('click', '#btnSelectStamp', function () {
var imageObj = new Image();
imageObj.id = $(this).attr("value")
imageObj.src = "@Url.Action("GetMapStamp", "MapMaker")?imageID=" + $(this).attr("value"
selectedHandle = {
x: width / 2,
y: 150,
isActive: false,
height: imageObj.height,
width: imageObj.width,
rotation: 0,
image: imageObj,
}
$('#SelectImageModal').modal('hide')
handles.push(selectedHandle)
draw()
});
如上所示,我将新图像的 ID 设置为通过按钮单击发送的内容。这样做的原因是因为我正在通过控制器动态加载图像。然后在争用点,它将图像源设置为 url 操作。
控制器代码如下所示:
public IActionResult GetMapStamp(string imageID)
{
MapStampItem objMapStamp = MapStampItem.Load(new Guid(imageID));
return File(objMapStamp.MapStamp, "image/jpeg");
}
如果需要更多详细信息,请随时询问。
提前致谢。
解决方案
推荐阅读
- c++ - 关于类模板和函数模板的SFINAE问题
- python-3.x - 创建 AWS lambda 函数以根据低 CPUUtilisation 关闭实例
- python - 生成所有可能的整数区间
- kubernetes - Kubernetes 集群上的 Helm 安装或升级版本失败:服务器找不到请求的资源或升级失败:没有部署的版本
- node.js - 获取节点js express中数组元素的位置
- angular - 我想在 Ionic 3 中获取我的购物车中所有产品价格的总和
- python - 如何在 pyspark 数据框中找到每个列表的第一个值的中位数?
- json - Spark 读取多个文件:双引号替换为 %22
- node.js - TypeError:无法读取未定义的属性“onReady”
- python - Python3 - 运行单元测试时输出 __main__ 文件(来自实际程序,而不是单元测试)