所以我今天遇到了大图像宽度高度问题,其中特定浏览器(Chrome v31.0.1626.5)使用 Jquery 的.width()为图像选择器提供了 0 宽度。
在 Jquery UI 对话框中加载图像(或似乎在它之后)后,我在按钮的单击处理程序中有以下行。
var imageWidth = $("#myImageSelector").width();
// imageWidth = 0 in Chrome
// imageWidth = 1024 (which is the actual image width) in Firefox v23
因此,经过一些研究后,我发现只有在加载图像(此处和此处)后才能访问图像的高度和宽度属性,并且存在一些竞争条件......
1。这里有问题的竞争条件是什么?
2. Chrome 处理图像的方式与 Firefox 有何不同?一般情况下,它是否也仅适用于 HTMLImageElement 或其他 DOM 元素?为什么在 Firefox 中正确显示宽度?(是不是因为上面所说的竞争条件在 Firefox 中处理得更优雅?)
PS:非常感谢任何进一步阅读的参考资料。