我刚刚意识到我搞砸了我的上一个问题。
我正在使用下面的脚本获取DIV#tweet-area的动态高度,并将该高度插入CSS。
var tweetheight = $("#tweet-area").height();
$("#sidebar-wrapper").css({ bottom: tweetheight});
它很漂亮,但我刚刚意识到它的高度,是我的twitter内容加载之前div的高度。我的推特内容是由jQuery插件生成的,见下文。
我正在使用这个jQuery twitter插件 - tweet.seaofclouds.com/jquery.tweet.js
像这样加载脚本 -
$("#latest-tweet").tweet({
count: 1,
username: ["motocomdigital"],
loading_text: "searching twitter...",
});
我将推文加载到DIV #titet-area内的DIV#latest-tweet。见下文
<div id="tweet-area" class="clearfix">
<div id="latest-tweet"></div>
</div>
我尝试在twitter脚本之后添加我的高度脚本,但仍然获得相同的高度:/
<script>
$(document).ready(function() {
$("#latest-tweet").tweet({
count: 1,
username: ["motocomdigital"],
loading_text: "searching twitter..."
});
var tweetheight = $("#tweet-area").height();
$("#sidebar-wrapper").css({ bottom: tweetheight});
});
</script>
任何帮助都会很棒,因为这对我来说是个专家。非常感谢
答案 0 :(得分:3)
尝试以下方面的内容:
<script>
$(document).ready(function() {
$("#latest-tweet").tweet({
count: 1,
username: ["motocomdigital"],
loading_text: "searching twitter..."
}).bind("loaded", function(){
tweetheight = $("#tweet-area").height();
$("#sidebar-wrapper").css({ bottom: tweetheight});
});
});
</script>
这在您获得的插件中实现了一个记录不良的调用者,这是在代码运行后调用loaded
处理程序。祝你好运!
答案 1 :(得分:2)
seaofclouds插件没有回调,而是有一个loaded
事件,当加载推文完成时会触发该事件。
因此以下内容适用于您:
$("#latest-tweet").tweet({
count: 1,
username: ["motocomdigital"],
loading_text: "searching twitter..."
})
.bind("loaded", function() {
var tweetheight = $("#tweet-area").height();
$("#sidebar-wrapper").css({ bottom: tweetheight});
});
答案 2 :(得分:1)
在您阅读的插件的229
行
$(widget).trigger("loaded")
这会触发您绑定推文的div上的事件loaded
。所以你可以做到
$("#latest-tweet").tweet({
// options
}).bind("loaded", function(){
// calc height
});