(注: https://github.com/gkz/LiveScript/issues/731でもこの質問をしました)
html ファイルで LiveScript を直接使用すると、ライブスクリプト コードをすぐに実行する方法がありません。例えば;
...
<script src="livescript.js"></script>
<div class="my_target"></div>
<script type="text/ls">
# my livescript code will interact with div.my_target
</script>
<script>
/* a javascript code that will interact with div.my_target
</script>
<script type="text/ls">
# my livescript code does something else
</script>
<script>
var LiveScript = require("LiveScript");
LiveScript.go();
</script>
LiveScript コードは両方とも実行されますが、対話する LiveScript コードdiv.my_target
は、 JavaScript コードが実行される前ではなく、後で対話します。
私が定義する場合
<script>
var LiveScript = require("LiveScript");
LiveScript.go();
</script>
LiveScript コードが定義された直後にすべての部分を毎回実行すると、この定義までのすべての LiveScript コードが複数回実行されます。
### livescript code 1
### LiveScript.go()
...
### livescript code 2
### LiveScript.go()
...
### livescript code 3
### LiveScript.go()
...
このコードが実行されると:
livescript code 1
3回実行され、最初は定義直後に実行されますlivescript code 2
2回実行され、最初は定義直後に実行されますlivescript code 3
1回実行され、これは定義直後に実行されます
このようになれば、LiveScript は htmlでより簡単に使用され、Web 開発のネイティブ言語のように使用されます。
...
<script src="livescript.js"></script>
<script>
var LiveScript = require("LiveScript");
LiveScript.doSomeMagic_Kaboooommm();
</script>
...
<script type="text/ls">
# my livescript code
</script>
... more html
<script type="text/ls">
# my livescript code
</script>
...
<script type="text/ls">
# my livescript code
</script>
...
とにかくそれを行うことはありますか?