前提・実現したいこと
自作のjQueryプラグインにて、複数のクラスに対しプラグイン内で変数を保持しているのですが、
外部からメソッドでその変数の値を取得したいです。
発生している問題・エラーメッセージ
メソッドを定義しているのですが、戻り値がNaNとなります。
該当のソースコード
jQuery
1(function($) { 2 var val; 3 4 var methods = { 5 init: function(options){ 6 //初期値をセットする処理 7 val = 0; 8 }, 9 getVal: function(){ 10 //valを返す 11 return val; 12 } 13 } 14 15 $.fn.hoge = function(method){ 16 17 if ( methods[method] ) { 18 return methods[method].apply( this, Array.prototype.slice.call( arguments, 1 )); 19 } else if ( typeof method === 'object' || ! method ) { 20 return methods.init.apply( this, arguments ); 21 } else { 22 $.error( 'Method ' + method + ' does not exist on jQuery.tooltip' ); 23 } 24 25 } 26 27})(jQuery);
javascript
1//html内に記述 2$('.hoge').each(function(){ 3 this.hoge({}); 4}); 5 6$('#fuga').on('click', function(){ 7 var x = $('#piyo.hoge').hoge('getVal'); 8 //NaNが返る 9 console.log(x); 10}); 11
その他
自分の認識が誤っており、メソッドを呼んだときにもオブジェクトが生成されており、既存のオブジェクトを参照しないのでしょうか。
大変お手数ですが、ご教授いただけると幸いです。
回答1件
あなたの回答
tips
プレビュー