有什么方法可以获取使用上下文的画布吗?
为什么我要问是因为我正在创建一个原型函数CanvasRenderingContext2D
,我需要画布元素的宽度/高度。
例如:
var cv = document.getElementById('canvas');
var ctx = cv.getContext('2d');
// Using only 'ctx', how to get 'cv'?
有什么方法可以获取使用上下文的画布吗?
为什么我要问是因为我正在创建一个原型函数CanvasRenderingContext2D
,我需要画布元素的宽度/高度。
例如:
var cv = document.getElementById('canvas');
var ctx = cv.getContext('2d');
// Using only 'ctx', how to get 'cv'?
ctx.canvas
应该返回画布 DOM 节点,您可以从中获取高度和宽度。
我尝试使用https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Basic_usage
Firefox 能够返回 ctx.canvas,以及 ctx.canvas.width 和 ctx.canvas.height。在 Chrome 中也得到了确认。
试试这个来检查自己:
var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var isSameObject = canvas === context.canvas;
alert(isSameObject
? 'context.canvas gives expected result'
: 'unexpected result');