2014-07-15 60 views
0

我得到了以下lua.vm.js代碼:lua.vm.js的innerHTML錯誤

local data=tostring(js.global.Module.read('/statsWidget.lcgi')) 
print(data) 
print(js.global.document.getElementById('statsWidget').innerHTML) 
js.global.document.getElementById('statsWidget').innerHTML=data 

而Ajax調用和打印都做工精細,試圖設置的innerHTML提出了一個JavaScript錯誤:

Uncaught SyntaxError: Unexpected identifier lua.vm.js:5717 
    _emscripten_run_script_int    lua.vm.js:5717 
    iS          lua.vm.js:6406 
    eX          lua.vm.js:6406 
    iM          lua.vm.js:6406 
    eZ          lua.vm.js:6406 
    iD          lua.vm.js:6406 
    iM          lua.vm.js:6406 
    eZ          lua.vm.js:6406 
    dB          lua.vm.js:6406 
    k1          lua.vm.js:6407 
    invoke_vii        lua.vm.js:6359 
    eS          lua.vm.js:6406 
    e2          lua.vm.js:6406 
    dA          lua.vm.js:6406 
    cD          lua.vm.js:6406 
    ccallFunc         lua.vm.js:536 
    ccall          lua.vm.js:495 
    Lua.execute        lua.vm.js:6608 
    (anonymous function)      lua.vm.js:6614 
    Lua.executeScripts      lua.vm.js:6613 
    window.onload        lua.vm.js:6603 

我做錯了什麼?

+1

這是有效的Lua語法。這可能是'lua.vm.js'解析器中的一個錯誤。 –

+0

我知道這是有效的Lua,奇怪的是,在由lua.vm.js或emscripten生成的某些代碼中似乎存在JS語法錯誤('_emscripten_run_script_int'中的行進行評估) – nonchip

+0

嗯,'lua.vm. js'是一個JavaScript庫。它可以調用它自己的函數,當它引發一個錯誤時,它被記錄在回溯中。 –

回答

1

我無法驗證你的數據,但對於我這種工作原理:

-- working 
js.global.document:getElementById('statsWidget').innerHTML= "foo" 

雖然失敗:

-- not working 
js.global.document.getElementById('statsWidget').innerHTML= "foo" 

通知文件後結腸。它爲該函數添加了一個隱藏的自參數:

-- working too 
js.global.document.getElementById(js.global.document,'statsWidget').innerHTML= "foo" 
+0

謝謝,非常有意義。關於「無法工作」的 – nonchip

+0

:你沒有定義'self'。應該是'js.global.document.getElementById(js.global.document,...)' – nonchip

+0

@nonchip我糾正了它。你是老兄! – Daveman

相關問題