2011-09-13 10 views
0

誰かが私をここで助けてくれるのだろうかと思っていました。私のコードはすべてのブラウザで正常に動作していますが、私のFacebookのアプリケーションページにアクセスすれば、私のdivのshowMsg、showMsg2、tryまたはtry1は表示されません。誰か助けてくれますか?ここでのコードは、私はそれを修正しましたので、 は実際に、私はちょうどあなたのAJAX呼び出しが200の状態を返した場合にのみ、表示されますあなたのdiv & & xmlhttp.statusの==の200AJAXとFacebook Apps

<script type=text/javascript> 
function get_radio_value() 
{ 
var xmlhttp; 
if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
for (var i=0; i < document.plz.myGuess.length; i++) 
{ 
if (document.plz.myGuess[i].checked) 
{ 
var rad_val = document.plz.myGuess[i].value; 
var rightAnswer = document.plz.here.value; 
var entryID = document.plz.entryid.value; 
if (Number(rad_val) == Number(rightAnswer)) 
{var points=1; 
xmlhttp.onreadystatechange=function() 
{ 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
document.getElementById('showMsg').innerHTML=xmlhttp.responseText; 
document.getElementById('showMsg').style.display = 'block'; 
document.getElementById('try').style.visibility = 'visible'; 

}}} 
else { 
var points=0; 
xmlhttp.onreadystatechange=function() 
{ 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
document.getElementById('showMsg2').innerHTML=xmlhttp.responseText; 
document.getElementById('showMsg2').style.display = 'block'; 
document.getElementById('try1').style.visibility = 'visible'; 
}}}}} 
xmlhttp.open("GET","/script/facebook/fb_question.php?correct=" + points + "&entryid=" + entryID ,true); 
xmlhttp.send(); 
} 
</script> 
{exp:weblog:entries weblog="fbqs" orderby="date" sort="desc" limit="1" disable="member_data|trackbacks"} 
<div style="line-height:150%">{fbquestion} <br /><br/> 
<form name="plz" > 
<input type="hidden" id='here' value='{correct}' /> 
<input type="hidden" id='entryid' value='{entry_id}' /> 
<input type="radio" name='myGuess' value='1' checked="checked" /> {opta}<br /> 
<input type="radio" name='myGuess' value='2' /> {optb}<br /> 
<input type="radio" name='myGuess' value='3' /> {optc} <br /> 
<input type="radio" name='myGuess' value='4' /> {optd} <br/> 
<input type="radio" name='myGuess' value='5' /> {opte}<br/><br/> 
<input type='button' onClick='get_radio_value()' value='Guess' > 
</form> 
<br> 
<div id="showMsg" style="display:none; background:url(/images/correct2.gif) no-repeat ;width: 200px; height: 25px;"></div> 
<div id="showMsg2" style="display:none; background:url(/images/incorrect2.gif) no-repeat ;width: 200px; height: 25px;"></div> 
<br> 
<div id="try" style="visibility:hidden;">Read more about the answer <a href="{articleurl}">{article}</a></div> 
<div id="try1" style="visibility:hidden;">Find the correct answer here <a href="{articleurl}">{article}</a></div> 
{/exp:weblog:entries} 
+0

divが表示されていない、または空のコンテンツが表示されているということですか?そして、あなたはこのコードがウェブサイト上で直接アクセスされたときに機能しますが、キャンバスページでアクセスすると失敗することを意味しますか? –

答えて

0

を処分した....です最も可能性の高い説明は、あなたが他のステータス(404多分?)を受けているということです。受け取った実際のステータスを表示し、ヒントのWebサイトのエラーログを確認してください。