Javascript - ошибка в обработчике событий

0

Следующий код продолжает извергать эту ошибку. Я не могу понять, почему.

Ошибка в обработчике событий: TypeError: Не удается прочитать свойство 'state' of null

// Generated by CoffeeScript 1.6.3
(function() {
jQuery(function($) {
var eventMethod, eventer, frame, messageEvent;
frame = $("#cf-iframe");
alert(frame.length);
if (frame.length > 0) {
  console.log("somehow");
  eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
  eventer = window[eventMethod];
  messageEvent = eventMethod === "attachEvent" ? "onmessage" : "message";
  return eventer(messageEvent, function(e) {
    var newHeight;
    newHeight = e.data;
    if (!isNaN(newHeight && frame === true)) {
      return frame.css("height", newHeight + "px");
    }
  }, false);
}
});

}).call(this);
  • 2
    не могу увидеть любое "состояние" в коде, я думаю, что его половина кода!
  • 0
    Я думаю, что это исходит из другого места. Это имело бы смысл. Этот код выглядит хорошо для меня.
Показать ещё 2 комментария
Теги:
coffeescript

2 ответа

1
Лучший ответ

Ваш код в порядке, но кажется, что ошибка от otside...

Проверьте свой скрипт

0

Похоже, что в вашем коде пропускаются "onmessage" и "message". Я попробовал это на хроме. и это не ошибка. Вам также не нужно "$" в jQuery(function($)).

(function() {
  jQuery(function() {
    var eventMethod, eventer, frame, messageEvent;
    frame = $("#cf-iframe");

    if (frame.length > 0) {

      eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";

      eventer = window[eventMethod];

      messageEvent = eventMethod === "attachEvent" ? "message" : "onmessage";

      return eventer(messageEvent, function(e) {
        var newHeight;
        newHeight = e.data;
        if (!isNaN(newHeight && frame === true)) {
          return frame.css("height", newHeight + "px");
        }
      }, false);
    }
  });

}).call(this);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню