【问题标题】:Prototype Cannot call method 'get' of undefined原型无法调用未定义的方法“get”
【发布时间】:2013-05-16 21:30:49
【问题描述】:

Chrome 控制台给了我这个错误:

Uncaught TypeError: Cannot call method 'get' of undefined 

我搜索该行并找到了这个:

  function _createResponder(element, eventName, handler) {
    var registry = Element.retrieve(element, 'prototype_event_registry');

    if (Object.isUndefined(registry)) {
      CACHE.push(element);
      registry = Element.retrieve(element, 'prototype_event_registry', $H());
    }
    var respondersForEvent = registry.get(eventName);

未捕获的类型错误:无法调用未定义的方法 'get'

 if (Object.isUndefined(respondersForEvent)) {
      respondersForEvent = [];
      registry.set(eventName, respondersForEvent);
    }

【问题讨论】:

标签: magento prototypejs


【解决方案1】:

这似乎是在将“null”元素传递给事件绑定上的函数时发生的。尝试在第二行之前添加以下内容 (var registry = ...)

if (element === null) return;

这将基本上防止在此函数中进行任何进一步的处理,当元素为空时,这不应该是必需的。

我没有发现在 Magento 上执行此操作有任何问题,但如果使用此修复程序有任何问题,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-05
    • 2014-03-21
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 2023-03-23
    • 2013-09-25
    • 1970-01-01
    相关资源
    最近更新 更多