除非我“检查页面”,否则不会设置高度

发布于 2024-12-29 18:57:05 字数 591 浏览 1 评论 0原文

由于某种原因,当页面首次加载并且内容调整大小时,如果我在 Chrome 中执行“检查元素”,它只会运行“matchColumns”。似乎无法理解为什么它会这样做,而不是每次内容更改时都更改。 这里是我正在使用的网站。提前致谢。

var $j = jQuery.noConflict();

$j(document).ready(function() {
    MC.general.init();
    MC.homeSlider.init();
    MC.homeMap.init();
    $j(window).resize(function() {
      $j('#layer-base, #layer-top, .exposed, ').matchColumns();
    }); 
});

$j.fn.matchColumns = function(){
    var height_tar = $j(document).height();
    $j(this).css({"height": (height_tar ) + "px"});
}; // matchColumns

For some reason this works when the page first loads and when the content gets resized it will only run the "matchColumns" if I do an "inspect element" in chrome. Can't seem to understand why it does that instead of changing everytime the content changes. Here is the site that I am working with. Thanks in advance.

var $j = jQuery.noConflict();

$j(document).ready(function() {
    MC.general.init();
    MC.homeSlider.init();
    MC.homeMap.init();
    $j(window).resize(function() {
      $j('#layer-base, #layer-top, .exposed, ').matchColumns();
    }); 
});

$j.fn.matchColumns = function(){
    var height_tar = $j(document).height();
    $j(this).css({"height": (height_tar ) + "px"});
}; // matchColumns

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不乱于心 2025-01-05 18:57:05

检查会在 Chrome/Safari 中打开 Web 检查器或 Firefox 中的 Firebug,它会占用视口的某些部分并触发窗口调整大小事件(即使从文档的角度来看,就操作系统而言窗口尚未更改大小)看来它有)。

除了在调整大小时触发的调用之外,我还添加了对立即运行的 matchColumns 的调用。就像:

$j(window).resize(function() {
  $j('#layer-base, #layer-top, .exposed, ').matchColumns();
}); 
$j('#layer-base, #layer-top, .exposed, ').matchColumns();

或者更好的是,将该行分解成一个函数。

Inspecting opens the Web Inspector in Chrome/Safari or Firebug in Firefox, which takes up some portion of the viewport and triggers a window resize event (even though the window hasn't changed size as far as the OS is concerned, from your document's point of view it has).

I'd add a call to matchColumns that runs right away, in addition to the calls that fire on resize. So like:

$j(window).resize(function() {
  $j('#layer-base, #layer-top, .exposed, ').matchColumns();
}); 
$j('#layer-base, #layer-top, .exposed, ').matchColumns();

Or better, factor out that line into a function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文