如果我网站上的Facebook用户未允许我们的应用程序在Facebook上,我正在尝试在我的网站上弹出一个弹出窗口作为内容储物柜。我相信我弹出的代码编写得很好,因为它本身可以正常运行。检查用户是否登录的Facebook代码也可以独立运行。我在组合Facebook javascript和我的DIV时遇到了麻烦。我的弹出窗口一直有效,直到我尝试将弹出窗口中的DIV放入else
或else if
个语句中。
我可以将这些div放在javascript else if
和else
语句中吗?以下DIV是我试图在声明中加入的内容:
<div class="overlay"><div class="overlay-content"></div></div>
我也试过将它们放在document.write
里面来显示div,但它也没有帮助我。
我的代码可以是found here,也可以从那里粘贴:
FB.getLoginStatus(function(response) {
if (response.status === 'connected'){
document.write("Looks like you're logged into Facebook and our app :)");
// the user is logged in and connected to your
// app, and response.authResponse supplies
// the user’s ID, a valid access token, a signed
// request, and the time the access token
// and signed request each expire
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
}
else if (response.status === 'not_authorized'){
<div class="overlay"><div class="overlay-content"></div></div>
// the user is logged in to Facebook,
//but not connected to the app
}
else{
<div class="overlay"><div class="overlay-content"></div></div>
// the user isn't even logged in to Facebook.
}
});
</script>
答案 0 :(得分:0)
我的弹出窗口一直有效,直到我尝试将弹出窗口的DIV放入我的其他内容中,否则就会出现。
那是因为你只是混合JS和HTML代码,这是不可能的。 (请了解这些事情是如何运作的基本知识,因为这种尝试明显缺乏基本知识!)
我也尝试将它们放在document.write中来显示div,但它也没有帮助我。
这也不是一个有前景的方法。在初始呈现文档后调用的document.write将替换当前文档。所以这也不是你想要的。
解决方案非常简单 - 随时在HTML代码中包含重叠的DIV元素;然后,在检查登录后,只需将其设置为display:none(直接或通过操纵它的类)来使其不可见,或者将其从DOM中完全删除。
再次,请获取有关您要使用的技术的基本知识。