3
var g = $('#go');
var z = $('#are');

y クラス内で alertData と hideData を使用できるようにしたい変数があります。

これを行う最も簡単な方法は何ですか?

var y = {    

    alertData: function (){
        alert('z');      
    },
    hideData: function (){
        $(this).hide();
    } 

};
4

7 に答える 7

3

あなたはいつでもできる:

var y = {    
    g : $('#go'),
    z : $('#are'),
    alertData: function (){
        alert(this.z);      
    },
    hideData: function (){
        this.g.hide();
    } 
};

また

var y = {    
    alertData: function (elem){
        alert(elem.prop('id'));      
    },
    hideData: function (elem){
        elem.hide();
    } 
};

var g = $('#go');
var z = $('#are');

y.alertData(g);
y.hideData(z);

連鎖可能なメソッドを探している場合は、 を使用$.fnしてメソッドを作成する必要があります。

于 2013-06-15T13:12:41.667 に答える
0

次のように追加します。

var y = {    
    g:"",
    z:"",
    alertData: function (){
        alert(this.z);      
    },
    hideData: function (){
        this.g.hide();
    } 

};

y.g = anythingとを使用して値を割り当てますy.z = anything

于 2013-06-15T13:17:32.153 に答える
0

g および z グローバル変数を作成すると、必要な関数内で使用できるようになります。

または、アラート データを呼び出してデータを非表示にするときに変数を渡すことができます。これは推奨されるアプローチであり、関数はグローバル変数から独立しており、後で他の場所でも使用できます。

于 2013-06-15T13:06:51.507 に答える
0

y に 2 つのローカル変数を作成し、それらがオブジェクトの一部になるように外部から割り当てます。そうすることで、y 内の好きな場所でそれらを使用できます。

于 2013-06-15T13:09:33.937 に答える
0
window.g = $('#go');
window.z = $('#are');

function somefunction(){
   console.log(g);
   console.log(z);
}
于 2013-06-15T13:12:01.637 に答える