Вопрос

У меня много JavaScript на моей странице, и я использую typekit. Чтобы заставить мою страницу работать правильно (сетка и вещи), я использую новые события шрифта Typekit.

Это просто попытка и исправить заявление, которое проверяет, загрузка шрифтов или нет. Однако как-то я не понимаю. Я звоню setGrid() Функция, если загружены шрифты Typekit, но, например, iPad или iPhone не поддерживают это, и поэтому моя страница не будет правильно отображаться, когда я не называю setGrid() функция.

Во всяком случае, я хочу позвонить в функцию в операторе ошибки, поэтому, если страница вызывается на iPhone, страница работает без WebFonts.

try {
 Typekit.load({
  loading: function() { },
  active: function() { setGrid(); },
  inactive: function() { }
 })
} catch(e) {
 alert('error'); //works
 setGrid(); //doesn't get called
}

Однако alert работает setGrid() Функция не вызывается. Есть идеи?

Редактировать: функция выглядит так:

var setGrid = function () {
 $('#header, #footer').fadeIn(500);
 return $("#grid").vgrid({
  easeing: "easeOutQuint",
  time: 800,
  delay: 60
 });
};
Это было полезно?

Решение

Попробуйте сделать это «реальной» функцией, как это:

function setGrid() {
  $('#header, #footer').fadeIn(500);
  return $("#grid").vgrid({
    easeing: "easeOutQuint",
    time: 800,
    delay: 60
  });
};

Другие советы

Функция называется, но она просто не работает, поскольку вы ожидаете, что вы думаете, что это не вызывается. Вы можете видеть, что он вызывается, добавив предупреждение в качестве первой строки SETGRID.

jsfiddle link.

Не могли бы вы:

  • Попробуйте / поймать setGrid, слишком
  • alert После setgrid, чтобы подтвердить, что он проходит через setGrid
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top