文章中の文字をJavaScriptとして動作させてみる

文章中に使ったサンプルの文字とかを
直接動作させる方法はないかなと思い探してみたら、
どうやらevalという関数で動作させることができるようだ。
今後作って動作させてみたいことがあるので、
今回はその時のために、evalの使い方を勉強してみる。
eval(○○)
eval(○○)は、○○に入れた文字を動作させられるらしい。
つまり、書いている文字を引っ張ってきて、そこに入れれば、
書いた文字が動作するのでしょう!
引っ張ってくるのをjQueryの構文にしてみたら、
その構文通りに動くのではないだろうか?
ってことで実験。
サンプル
■設定ソース
$(function(){
$("input.run").click(function(){
var code = $("#samp").text();
eval(code);
});
});
今回から、$(document).ready(function()・・・の部分を
省略して$(function()としてみた。
jQueryではどちらでも動作するのだが、
今までは感覚的に捉えにくかったので使わないでいたが、
そろそろ覚えてきたので切り替えてみることにした。
■HTML
<p id="samp">$("#prev").toggle("slow");</p>
<input type="button" value="» 実行" class="run" />
<p id="prev">実行をクリックすると、ここが消えるよ</p>
今回はCSS部分は省略してあります。
書いてあるように今回は、
「<p id="hoge">$("#prev").toggle("slow");</p>」を読んで、
実行と書かれたinputで作ったボタンをクリックした時に
それを実行させるようにしてみました。
サンプルプレビュー
$("#prev").toggle("slow");
実行をクリックすると、ここが消えるよ
今後応用予定
以前のブログでは導入していたのだけど、
今度は自分の手で作ってみたかったソースがあるので、
いつかそれを導入してみようと思う。
どんなのかというと、毎回サンプルと同時に実行ソースも書いているのだけど、
片方だけ書けば、もう片方を自動的に生成するようなのを作りたかったので、
今回はその準備のための勉強をしてみた。
近いうちに、サンプルで書いたのを直接実行できるような
そんなのを作ってみようとおもう。
