2014-09-13 1 views
0

자바 스크립트 파일을 내 Phonegap 앱에 가져 오지 못합니다. 이것은 매우 솔직하게 나를 미치게 만드는 최근의 문제입니다. 나는 아무것도 console.long 수 없습니다Phonegap 자바 스크립트 파일을 포함하지 않는 앱

$(document).on('ready' , function(){ 
console.log('ready') 

function onDeviceReady(){ 

console.log('test') 

var plugin = new CC.CordovaFacebook(); 

plugin.init('***************', 'myapp', 
    ['email'], 
    function(response){console.log(response)}, 
    function(failure){console.log(failure)}); 

var loginButton = $('#login-with-facebook'); 

loginButton.on('click' , function(e){ 
    e.preventDefault(); 

    plugin.login(function(token) { 
     console.log("Access token is: " + token); 
    }), function(failure){console.log(failure)}); 

}) 


} 
if (window.cordova.logger) {window.cordova.logger.__onDeviceReady();}; 
onDeviceReady(); 
document.addEventListener("deviceready", onDeviceReady, false); 

}) 

: 이것은 내가 끌어 오기 위해 노력하고있어 내 facebook.js 파일이

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css"> 
    <link rel="stylesheet" type="text/css" href="css/index.css" /> 
    <title>Hello World</title> 
    <script type="text/javascript" src="cordova.js"></script> 
    <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=AIzaSyD90W6MypWGP6s4luD2kQHhZ9IFQrfr04g&sensor=true"></script> 
    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=visualization"></script> 
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
    <script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script> 
    <script type="text/javascript" src="js/index.js"></script> 
    <script type="text/javascript" src="js/facebook.js"></script> 
    <script type="text/javascript"> 
     app.initialize(); 
    </script> 

입니다 : 이것은 내 index.html 파일의 선두입니다 facebook.js 파일. 나를 더욱더 미치게 만드는 이유는 그것이 때로는 효과가 있다는 것입니다. 내 파일이 고장난거야? 또한, 코도바 페이 스북 플러그인 중 하나를 설치 한 후에 만이 문제에 부딪 히고있는 것 같습니다. 아무도 여기서 무슨 일이 일어나는 지 알아?

답변

0

익명 이벤트 처리기 함수 내에서 onDeviceReady 함수를 정의 했으므로 DOM을로드 할 때까지 사용할 수 없으며 이벤트 처리기 내에서만 액세스 할 수 없어야합니다. onDeviceReady가 onDocumentReady 이벤트 핸들러에서 수동으로 호출 되었기 때문에 DOM로드 전에 준비가되었습니다.

function onDeviceReady(){ 

    console.log('test') 

    var plugin = new CC.CordovaFacebook(); 

    plugin.init('443530475777959', 'spencerspiegelapp', 
     ['email'], 
     function(response){console.log(response)}, 
     function(failure){console.log(failure)}); 

    var loginButton = $('#login-with-facebook'); 

    loginButton.on('click' , function(e){ 
     e.preventDefault(); 

     plugin.login(function(token) { 
      console.log("Access token is: " + token); 
     }), function(failure){console.log(failure)}); 

    }) 
} 

$(document).on('ready' , function() { 
    console.log('ready') 
    document.addEventListener("deviceready", onDeviceReady, false); 

    if (window.cordova.logger) { 
    window.cordova.logger.__onDeviceReady(); 
    } 
});