0
私はphonegapプログラムを作成していますが、onClick="blah(param1,param2)"
の代わりに.on('tap')
イベントを400msの遅延のために使用します。私がしたいのは、 "タップ可能な"アイテムのリストを "button1"というクラスに与え、各アイテムにはdata-meth="dosomething3()"
を与え、何かがタップされたときにそれを取得します。これまでの例では、タップは使用せず、代わりにクリックを使用しています。jqueryを使用してHTML5データ要素から関数+パラメータを取得して実行する
<script>
$(document).ready(function() {
console.log('document ready');
$(".button1").on('click', function(e){ //this will changed to 'tap' eventually
e.preventDefault();
console.log("logged click");
var tempp=$(this).data("meth");
alert(tempp);
tempp; // thought this would call the function as it is written in the data-meth value but it doesn't
});
});
function dosomething(){
console.log('dosomething called');
}
function dosomething(var1,var2){
alert('hello:' +var1+' just showing var2'+var2);
}
</script>
My simple html is
<ul>
<li style="text-align:center" class="button1" data-meth="dosomething()" >One</li>
<li style="text-align:center" class="button1" data-meth="dosomething2(var1,var2)">Two</li>
<li style="text-align:center" class="button1" data-meth="dosomething3()">Three</li>
</ul>
どのようにして関数をベースにして呼び出すことができますか、データメータ値に格納されているものはありますか?私の頭の上オフ
eval();私のために、意図したように働いた、ありがとう –
問題ないですが、 'eval()'の使い方に注意してください。 Googleがもう一度それを使用する前に欠点。しかし、この場合はおそらく大丈夫です。 –
私はアンドロイドアプリのためのphonegapと一緒に使用していますので、通常のインターネットサイトになるようにはなりません。 –