我对Facebook的scrollTo()
有一个非常古怪的问题。这是我的相关代码:
<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'APPID',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true, // parse XFBML
oauth : true // enable OAuth 2.0
});
FB.Canvas.setSize({ width: 810, height: 5000 });
//FB.Canvas.setAutoGrow();
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
function scrollToQuestion(top) {
FB.Canvas.scrollTo(0, top);
}
</script>
这是一个古怪的问题,它自己的代码不起作用。然而,当使用firebug并在FB.Canvas.scrollTo(top, 0);
行上放置一个断点而不是功能时。发生了什么......?!
编辑:终于想通了......出于一些奇怪的原因,top变量以某种形式的字符串形式出现。我不得不改变对这个函数的调用:
var top = 0;
top = parseInt($('.top'"]').position().top);
scrollToQuestion(top);
这解决了我的问题。