2016-09-14 40 views
0

私は "lua.vm.js"を使ってWebクライアント側でluaを開発します。JavascriptからLua関数を呼び出す方法

私はjsスクリプトからどのようにしてLua関数を呼び出すことができるか知りたいと思います。 JSからLuaのコードを実行する

<script src="lua.vm.js"></script> 
<script type="text/lua"> 
    function YourLuaFunction() 
     -- your Lua code is here 
    end 
</script> 

<button id="MyBtn">Lua inside</button> 
<script type="text/lua"> 
    js.global.document:getElementById("MyBtn"):addEventListener("click", YourLuaFunction); 
</script> 

方法#2
使用L.execute(code)

var element = document.getElementById("myBtn") 
    element.addEventListener("click", function(){ /*call here Lua function*/ }); 
+1

私はあなたがインターネット上で何も見つからなかったことを疑います。 lua.vm.jsのWebページでも例が... – Piglet

+2

[回避策](http://pastebin.com/ck1rmRmK) –

答えて

1

方法#1
はLuaのコード内からJavaScriptのオブジェクトを操作

ショート例:
element.addEventListener("click", function(){ L.execute('YourLuaFunction()'); });

ロング例:

<script src="lua.vm.js"></script> 
<script> 
    function executeLua(code) { 
     try { L.execute(code); } catch(e) { alert(e.toString()); } 
    } 
</script> 
<script type="text/lua"> 
     function YourLuaFunction() 
     -- your Lua code is here 
     end 
</script> 

<button onclick="executeLua('YourLuaFunction()')">Exec Lua code</button> 
関連する問題