jQuery插件降低图像高度1px在Chrome浏览器上刷新
jQuery plugin reduces image heights to 1px on a refresh in Chrome
我写了下面的jQuery插件,它查找所有元素的类"stretch",然后识别子元素的类"stretch_this",并使他们所有的最高的"stretch_this"元素在父元素的高度。
$(document).ready(function () {
stretchHeight()
});
$(window).resize(function () {
stretchHeight()}
);
function stretchHeight() {
$('.stretch').each(function() {
var maxHeight = -1;
jQuery(this).find(".stretch_this").each(function() { //Resets the height so that it can work again on a resize.
$(this).height('auto');
});
jQuery(this).find(".stretch_this").each(function() {
maxHeight = maxHeight > $(this).height() ? maxHeight : $(this).height();
});
jQuery(this).find(".stretch_this").each(function() {
$(this).height(maxHeight);
});
}
)
}
它在页面加载时运行,也在页面调整大小时运行,因为我的整体布局是响应性的,元素的高度可能会改变。
这是预期的工作,除了当我刷新一个页面在Chrome中,它减少了所有的图像高度以这种方式拉伸到1px;这在IE中不会发生。在Chrome中重新加载页面(即在地址栏中点击返回而不是点击刷新)效果很好-元素会按预期调整大小。
为什么会这样?这是我的代码错误,还是Chrome的怪癖?有别的办法吗?如果需要的话,这个插件是作为WordPress主题的一部分部署的。
lshettyl认为问题可能是插件在加载图像之前运行,因为刷新时DOM加载速度更快;这是正确的。所以,使用使用这里的建议,我把$(document).ready
改为$(window).load
,插件工作得很好。
相关文章:
- CORS-服务器端cookie没有保存在chrome浏览器上
- 我想用Javascript网站在开放的Chrome浏览器上执行功能
- Chrome浏览器“;挂起”;同时在循环中执行AJAX请求
- 通过Android Chrome浏览器下载文件
- Angularjs ng-options 问题仅适用于 Chrome 浏览器
- 当页面加载时,使谷歌chrome浏览器成为全屏浏览器
- 使用javascript在chrome浏览器的新选项卡中以程序方式打开URL
- 当代码放在Joomla文章中时,Jquery拖放在Chrome浏览器中无法正常工作
- Chrome浏览器:未从响应标头设置cookie
- Javascript只能在Chrome浏览器中使用,不能在Firefox中使用
- 如何禁用chrome浏览器中的web应用程序
- 我可以禁用Chrome浏览器中的“你已经全屏”通知吗
- 为什么asp按钮的java脚本click()函数在chrome浏览器中不起作用
- 节点检查器无法打开chrome浏览器,引发错误ENOENT
- 如何从Google Chrome浏览器中打开浏览窗口
- JavaScript在新的选项卡中打开,而不是在Chrome浏览器中打开窗口
- 常见页眉页脚的 JavaScript 代码在 Chrome 浏览器中不起作用
- jQuery Slider 在 Android Chrome 浏览器上不起作用
- 检测 Chrome 浏览器窗口的宽度和高度,以防止元素溢出
- 即使它在 Chrome 浏览器上不起作用,也可以单击