Cufon.refresh () не работает в IE8 - PullRequest
3 голосов
/ 17 февраля 2010

Мне нужно обновить шрифты Cufon после получения данных AJAX. К сожалению простой Cufon.refresh () не работает в IE8. Отладчик говорит, что строка 1191

sStyle.width = roundedShapeWidth;

имеет неверный аргумент.

Как это исправить?

Ответы [ 2 ]

5 голосов
/ 12 сентября 2010

У меня была такая же проблема. Не только в Cufon.Refresh, но и в случае Cufon.Now. И не только в IE8, но и в IE7, IE6 и даже в IE9PP. Я заметил, что я использую этот код для пополнения:

Cufon.replace('h1',{hover: true})('h2',{hover: true})('h3',{hover: true})('cite',{hover: true})('.cufon',{hover: true});

The ('.cufon', {hover: true}); часть была той, которая вызвала ошибку. Я потратил два дня, чтобы выяснить, как это может вызвать ошибку ...

Я открыл CSS, искал .cufon sytling. В CSS не было .cufon. И cufon не наследовал стили в серии IE, произошла ошибка.

Итак, я добавил это в свой CSS:

.cufon { }

и ошибка ушла.

(с использованием Cufon 1.09)

1 голос
/ 21 октября 2010

У меня была такая же проблема, и я просто использовал Cufon.replace вместо:

Cufon.replace('h1',{fontFamily: 'StackOverflow'});

Единственное неудобство, которое я вижу, заключается в том, что если вы хотите обновить все содержимое, вам нужно переместить их все:

Cufon.replace('h1, h2',{fontFamily: 'StackOverflow'});
Cufon.replace('h3', { fontFamily: 'StackOverflow Light'});
...