Куфон не работает внутри JavaScript - PullRequest
0 голосов
/ 29 сентября 2011

У меня следующая проблема. У меня есть текст в JavaScript. Я хочу, чтобы текст выглядел красиво, поэтому я обернул его "h3", который содержит модификатор javascript cufon canvas, так что он будет отличаться от обычного шрифта. Однако текст в Javascript, похоже, не подвержен влиянию cufon.

Я попробовал несколько вещей, чтобы заставить его работать, но, похоже, ничего не работает.

Это код:

jQuery.noConflict();
jQuery(document).ready(function($) {

  var author = $('#author').val();
  if( author !='' && $('#email').val() !='' ) {
    $('#authorData').hide();
    $('#authorData').before('<div id="welcome"> <h3>Welcome back, <strong>' + author + '</strong>! <a href="#">Edit &raquo;</a></h3></div>')
    $('#welcome a').toggle(
      function() {
        $('#authorData').show(300);
        $(this).html('Minimize &raquo;');
        return false;
      },
      function() {
        $('#authorData').hide(300);
        $(this).html('Edit &raquo;');
        return false;
      }
    );
  }

});

Моя идея состоит в том, чтобы получить весь "weclome div" в настоящий php и из кода javascript и просто оставить "redirector" в javascript, но я не уверен, возможно ли это вообще.

Есть идеи, как заставить это работать?

Мой скрипт cufon выглядит так:

 Cufon.replace('h1',{hover: true})('h2')('h3')('.stepcarousel .panel .caption .title');

P.S .: Это вроде работает в Internet Explorer, но не в Firefox. Очень странно!

Большое спасибо за любые советы и предложения! :)

Ответы [ 2 ]

0 голосов
/ 29 сентября 2011

Вы, кажется, добавляете контент после того, как DOM готов. Вы не указали в своем коде, где на самом деле вызываете метод Cufon.now(), но я предполагаю, что он вызывается до того, как ваши элементы добавляются в DOM.

Если вы проверите Cufon API , вы увидите метод refresh, который можно вызвать для выполнения именно этого:

Cufon.refresh();

Вам необходимо вызвать метод refresh, если новый текст добавлен в документ или даже если существующий текст изменяется (например, увеличивается размер шрифта).

0 голосов
/ 29 сентября 2011

cufon не работает, если отображается элемент или родительский элемент: нет (вы используете hide ()).Вместо этого используйте скрытую видимость.

...