2016-04-08 2 views
-1

Как получить доступ к этой функции:Javascript получить функцию по имени

readURL: function() { 
    var $input = $(this); 
    if (this.files && this.files[0]) { 
     var reader = new FileReader(); 
     reader.onload = function(e) { 
      $input.next('.input-preview').attr('src', e.target.result).show(); 
     } 
     reader.readAsDataURL(this.files[0]); 
    } 

    $(".ImageInput").change(readURL); 

}, 

С этим:

$(".ImageInput").change(readURL); 

Перед заголовок функции выглядит следующим образом:

function readURL() 

И это сработало , но как я могу получить доступ к другой декларации.

+0

Можете ли вы показать полный объект, содержащий метод? –

ответ

3

readURL является собственностью объекта (который вы не показываете). Поэтому передайте название объекта:

$(".ImageInput").change(yourObject.readURL); 
+0

Да, но обратите внимание, что функция ожидает, что 'this' будет правильно установлен (что-то) – Pointy

+2

@Pointy JQuery передает связывание' this', если im не ошибается, и функция вызывается из функции jquery – Randy

+0

@randy yes хорошая точка зрения; похоже, ожидает, что 'this' будет' ', поэтому это имеет смысл. – Pointy

Смежные вопросы