Зачем использовать «это» для вызова функции в jquery - PullRequest
0 голосов
/ 27 января 2012

У меня есть следующий код.В приведенном ниже коде есть две функции, вызывающие другую функцию.Но я не могу понять, почему однажды эта функция вызывается с этим, а в другой раз та же самая функция вызывается переменной в другом месте.

 var widgetMethods = {

    getWidgetData: function($widgetElement) {

          var widgetData = $widgetElement.data('widgetData');

          widgetData = (typeof widgetData == 'undefined')  ? { type: null, key: null } : widgetData;

          if( widgetData.type == null ) {
            console.log("Widget type is not specified!");
            return false;
          }

          if( widgetData.key == null ) {
            console.log("Widget key is not specified!");
            return false;

          }
          return widgetData;
        },

    editWidget: function(key, options) {  

          var $self = jQuery(this);
          var widgetData = widgetMethods.getWidgetData($self);
          }

    getWidgetTemplate: function($widgetElement) {

          var widgetData = this.getWidgetData($widgetElement);
          }


    }

Может кто-нибудь помочь мне.Я сбит с толку.Пожалуйста, опишите кратко.

1 Ответ

0 голосов
/ 27 января 2012

это относится к текущему указателю элемента, вызывающего функцию.следовательно, вы можете передать текущий элемент, используя «this».однако, когда вы вызываете другую функцию, на которую не ссылается один и тот же элемент, вам нужно передать ее атрибут, чтобы использовать ее.

все еще, если вы не уверены, посмотрите на это http://msdn.microsoft.com/en-us/library/y0dddwwd.aspx

:)

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