使用Unity Facebook SDK时如何更改背景图像

使用Unity Facebook SDK时如何更改背景图像,facebook,unity3d,facebook-unity-sdk,Facebook,Unity3d,Facebook Unity Sdk,我正在使用Unity Facebook SDK在Facebook上设置我的Unity游戏 我已经使用“Unity integration enabled”设置了该应用程序,游戏可以按预期运行 我想将网页的背景图像从纯白色更改为位图图像 我通常会编辑HTML来完成这项工作,但我没有通过SDK访问它的权限 我尝试使用Application.ExternalEval将一些Javascript注入HTML页面,如下所示: var content = document.getElementById("pa

我正在使用Unity Facebook SDK在Facebook上设置我的Unity游戏

我已经使用“Unity integration enabled”设置了该应用程序,游戏可以按预期运行

我想将网页的背景图像从纯白色更改为位图图像

我通常会编辑HTML来完成这项工作,但我没有通过SDK访问它的权限

我尝试使用Application.ExternalEval将一些Javascript注入HTML页面,如下所示:

var content = document.getElementById("pagelet_canvas_content");
content.style.backgroundImage = "url('background.jpg')";
但是我无法访问Chrome调试器告诉我的任何元素


有人知道如何个性化Facebook页面吗?

pagelet\u canvas\u内容位于您无法控制的父框架中。您的游戏在iframe中运行。尝试抓取body元素并修改它

$('body').css('backgroundImage', 'url(background.jpg)');
(或使用document.getElementsByTagName(“body”)等)

您可能还需要将画布的宽度和高度设置为fluid,以填充facebook chrome中的空间,然后您可能需要将播放器居中(SDK很快就会提供此功能,因此您以后不必再处理这些问题)


如果您有任何问题,请告诉我,谢谢您尝试SDK

pagelet\u canvas\u内容位于您无法控制的父框架中。您的游戏在iframe中运行。尝试抓取body元素并修改它

$('body').css('backgroundImage', 'url(background.jpg)');
(或使用document.getElementsByTagName(“body”)等)

您可能还需要将画布的宽度和高度设置为fluid,以填充facebook chrome中的空间,然后您可能需要将播放器居中(SDK很快就会提供此功能,因此您以后不必再处理这些问题)


如果您有任何问题,请告诉我,谢谢您尝试SDK

这是一些代码,用于在调整窗口大小时居中调整unity webplayer的大小。您可以轻松地添加javascript来加载背景。一旦unity应用程序通过Application.ExternalEval加载,就将注入该命令

window.onresize = function (){
var div = document.getElementById('unityPlayerEmbed');
if ((div.parentNode.offsetHeight+offset)>div.parentNode.parentNode.parentNode.clientHeight){
    div.style.height=(div.parentNode.parentNode.parentNode.clientHeight-offset)+'px';
    div.parentNode.style.height=div.parentNode.parentNode.parentNode.clientHeight+'px';
    div.parentNode.style.width=(div.parentNode.offsetHeight*1.777)+'px';
}else{
    div.parentNode.style.width='100%';
    div.style.height=((div.parentNode.offsetWidth*0.5625)-offset)+'px';
    div.parentNode.style.height=(div.parentNode.offsetWidth*0.5625)+'px';
}

这是一些代码,用于在调整窗口大小时居中调整unity webplayer的大小。您可以轻松地添加javascript来加载背景。一旦unity应用程序通过Application.ExternalEval加载,就将注入该命令

window.onresize = function (){
var div = document.getElementById('unityPlayerEmbed');
if ((div.parentNode.offsetHeight+offset)>div.parentNode.parentNode.parentNode.clientHeight){
    div.style.height=(div.parentNode.parentNode.parentNode.clientHeight-offset)+'px';
    div.parentNode.style.height=div.parentNode.parentNode.parentNode.clientHeight+'px';
    div.parentNode.style.width=(div.parentNode.offsetHeight*1.777)+'px';
}else{
    div.parentNode.style.width='100%';
    div.style.height=((div.parentNode.offsetWidth*0.5625)-offset)+'px';
    div.parentNode.style.height=(div.parentNode.offsetWidth*0.5625)+'px';
}