我试图访问的这个网站有
<script type="text/javascript">
function setCanvasSize()
{
FB.Canvas.setAutoResize(false);
FB.Canvas.setSize({ "width": 760, "height": 730 });
}
window.fbAsyncInit = function() {
setCanvasSize();
}
$(document).ready(function() {
setCanvasSize();
});
在主页上,但是 FB 是未定义的,因为我在我的主机文件中屏蔽了 Facebook。
每当我尝试访问它时,它都会吐出错误 Uncaught ReferenceError: FB is not defined
并且我看到一个空白页面。
我尝试使用 greasemonkey 脚本为页面设置 var FB = 0;
,但它不起作用。任何人都知道我该如何解决这个问题?有没有办法用 greasemonkey 从页面中删除这个 javascript?
最佳答案
我别无选择,只能在这个对象不存在时“覆盖”它。
将此代码放在页面的最后:
if (typeof FB == "undefined" || !FB) {
FB = {
Canvas: {
setAutoResize: function() {},
setSize: function() {}
}
};
}
这样,$(document).ready()
中的代码将使用此虚拟对象而不会崩溃。
关于javascript - 绕过 undefined variable ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8960395/