Twitter feed向页面添加空格

时间:2014-07-01 19:15:24

标签: javascript wordpress twitter

我的(WordPress)页面有两个div,' main'和'侧边栏'。我有一个在页面加载时运行的JavaScript,可以将填充添加到较短的div中,使两者的长度相等,以便背景渐变正确排列,例如:http://fightprimetc.com/gabriel/

但是,在我在侧边栏中显示Twitter Feed的任何页面上,填充都没有正确均匀。相反,在Twitter主菜的高度上的白色盒子显示在主要的'之下。 div,例如:http://fightprimetc.com/lawenforcement/

我把Twitter的信息缩短了,白盒子也缩小了;如果我完全删除Twitter提要,则该方框完全消失。

我唯一的猜测是,在我的填充晚上JavaScript运行之后,Twitter提要被插入侧边栏,但是由于JS进行了页面加载,那真的不应该是这样 - 对吗?

这是我的代码的相关部分:

<body onload="evenupmainandsidebar()">

function evenupmainandsidebar() {
    var mainheight = document.getElementById('main').offsetHeight;
    var sideheight = document.getElementById('sidebar').offsetHeight;

    if (sideheight > mainheight) {
        var pixelated = (sideheight - mainheight) + "px";
        document.getElementById('main').style.paddingBottom = pixelated;
    }

    else if (mainheight > sideheight) {
        var pixelated =  (mainheight - sideheight) + "px";
        document.getElementById('sidebar').style.paddingBottom = pixelated;
    }
}

谢谢!

2 个答案:

答案 0 :(得分:1)

老实说这是一个CSS问题,而不是真正的javascript问题。如果可以在页面加载时修复DOM,则不应该触摸DOM,总是首先尝试使用样式表修复样式问题。

快速解决方法是在#torso上添加一个高度,以便它始终包含内容并防止社交媒体提要混乱主要内容。

躯干{身高:1170px; }

真正的,深入的解决方案是重构您的CSS,以便在添加新内容时正确调整大小。

答案 1 :(得分:0)

我确认Twitter的Feed确实是在evenupmainandsidebar()运行后加载的。我的解决方案是修复包含Twitter提要的锚标签的高度和行高,为427px;因此,在推文加载前的毫秒或两秒内,侧边栏中有一个大的空白427px框,但该框允许evenupmain和sidebar()正确设置填充。一旦推文加载,它们就会填满这个框。

如果我有时间,我会做jorblume所说的并妥善解决这个问题。