Многоразовые функции jQuery и глобальные переменные - PullRequest
0 голосов
/ 22 марта 2011

У меня есть функция, которая также устанавливает несколько глобальных переменных. Сама функция работает нормально, но всякий раз, когда я вызываю функцию во второй раз, глобальные переменные меняются.

Вот моя теоретическая установка:

var dataurl;
var datafunction;

function GetData(_url, _function)
{
  dataurl = _url;
  datafunction = _function;
}

//Afterwards dataurl and datafunction will used by other functions.

Теперь я очень плохо знаком с jquery и не уверен, как правильно его создать, чтобы его можно было использовать более 1 раза. Может ли кто-нибудь помочь мне в правильном направлении?

Ответы [ 2 ]

2 голосов
/ 22 марта 2011

Возможно создание объектов:

var myObject = function() {
    // Local variable
    this.data = '';

    // Function to call
    this.callMe = function() {
        alert(this.data);
    }

    // Function to set data
    this.setData = function(newData) {
        this.data = newData;
    }
}

var a = new myObject();
a.setData('Hello World!');
a.callMe();
1 голос
/ 22 марта 2011

Не уверен, как это относится к элементу (плагин jQuery), но вот как вы можете структурировать свой прототип:

var DataHelper = function(_url, _function){
    this.dataurl = _url;
    this.datafunction = _function;
};
DataHelper.prototype = {
    GetData: function(){
        // loads data from storage
        // using this.dataurl, and this.datafunction
    }
};

Использование:

var dataHelper = new DataHelper('/mysite/url/', function(){
    // data function
}); 

dataHelper.GetData();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...