javascript - jQuery innerwidth/innerheight 无法在 Chrome/Safari 中正确处理图像

标签 javascript jquery google-chrome safari

我试图在每张图片上使用以下代码来获取页面上许多不同尺寸图片的宽度和高度:

img.width = img.innerWidth() + img.borderWidth.left + img.borderWidth.right;
img.height = img.innerHeight() + img.borderWidth.top + img.borderWidth.bottom;

出于某种原因,innerWidth() 和 innerHeight() 在 Chrome/Safari 中都返回了奇怪的值。以下是上面的代码在 Firefox 和 Chrome 上针对相同图像返回的内容的比较:

FIREFOX:
img.width = 736
img.height = 542

CHROME (SAFARI is similar to this):
img.width = 656
img.height = 36

就实际(可见)图像尺寸而言,Firefox 值或多或少是正确的。

我不可能在 CSS 中定义图像大小,因为所有图像都有不同的纵横比。如何解决这个问题,或者至少解决这个问题?

最佳答案

尝试使用 width:100%;height:100%;

关于javascript - jQuery innerwidth/innerheight 无法在 Chrome/Safari 中正确处理图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13251951/

相关文章:

javascript - 使用 PhoneGap Javascript Image 写入非 ASCII 字符

Javascript——等待用户交互而不卡住浏览器

javascript - JQuery 未读取 JSON 数组值

ajax - 如何优化大部分时间花在 Chrome "Request sent"类别中的 ajax 调用

javascript - 需要帮助理解 $scope 继承(并将新生成的内容添加到 Angular)

javascript - 我不明白这个 javascript 函数是如何执行的

javascript - 通过ajax存储数据然后访问该URL

php - jquery 验证多个提交按钮无法识别第二个提交操作

google-chrome - 每次单击 Chrome 扩展程序图标时运行脚本

css - 无法在 chrome 中编辑 CSS STYLE 属性(变灰和屏蔽)