有没有办法在iPad上获得naturalWidth?
我想要实现的目标
目前我正在开发一个测验应用,它有一个点区域问题类型。要回答这个问题,用户必须在图像上指向一个位置。该位置将被提交给服务器,如果单击的位置在正确的区域内,将返回布尔值。
它适用于所有浏览器,如果图像不是太大,它可以在ipad上运行。当图像太大时,它会自动调整大小以适应屏幕。点击图像上的某个点现在将提供不同的坐标,然后它将保持原始大小。
我发现自动调整大小与ipad的资源限制有关。显然我无法阻止这种情况,但这不是什么大问题。我只想知道调整大小时使用了什么因素。
为了获得因子,我需要原始宽度和实际宽度。
答案 0 :(得分:0)
我通过让服务器以HttpHeader(服务器端语言为VB)发送图像宽度来修复它
Dim objImage As Image = Image.FromFile(strFilePath.ToString())
context.Response.AddHeader("imagewidth", objImage.Width.ToString())
context.Response.ContentType = "text/plain"
在下方,您会看到我如何检索客户端:
cacheImage.imageWidth = $.ajax( arguments[i] + '&returnsize=true', { async: false } ).getResponseHeader( 'imagewidth' );
arguments [i]是媒体加载器的url,其中媒体id为参数。
returnsize =真
我不需要每种媒体类型的宽度。只有当我在请求之后放置returnsize = true时,才会获得媒体项的宽度。