【问题标题】:Cufon doesn't work inside javascriptCufon 在 JavaScript 中不起作用
【发布时间】:2011-09-29 08:53:22
【问题描述】:

我有以下问题。 我在 javascript 中有一些文本。我希望文本看起来不错,所以我用带有 cufon canvas javascript 修饰符的“h3”包裹它,所以它看起来与普通字体不同。 但是,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 代码中取出,然后在 javascript 中留下一个“重定向器”,但我不确定这是否可能。

任何想法如何使这项工作?

我的 cufon 脚本如下所示:

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

P.S.:它在 Internet Explorer 中有效,但在 Firefox 中无效。很奇怪!

非常感谢您的任何意见和建议! :)

【问题讨论】:

    标签: javascript cufon


    【解决方案1】:

    如果元素或父元素为 display: none 则 cufon 不起作用(您正在使用 hide() )。改为使用可见性隐藏。

    【讨论】:

    • 你好。我懂了。我试图通过可见性交换 hide():hidden() 但它不起作用。我对 jQuery 不是很熟悉,你能帮我看看代码应该是什么样子吗?谢谢你:)
    • 你好。我试图用谷歌搜索它,但我无法让它工作。我是否必须使用 $("div:hidden").show(); 代替 hide();还是完全不同的东西??!!请帮忙。 :)
    • 谢谢。所以你的意思是我应该尝试将“Cufon.replace”sn-p粘贴到我在我的问题中发布的js代码中?
    • 是的,或者像詹姆斯建议的那样尝试在那个地方刷新
    【解决方案2】:

    您似乎在 DOM 准备就绪后附加内容。您没有在代码中显示实际调用 Cufon.now() 方法的位置,但我假设它是在将元素附加到 DOM 之前调用的。

    如果您检查Cufon API,您将看到refresh 方法,可以调用该方法来精确执行此操作:

    Cufon.refresh();

    如果向文档中添加了新文本,或者即使现有文本发生更改(例如字体大小增加),您也需要调用 refresh 方法。

    【讨论】:

    • 你好。我对Cufon不是很熟悉。它已经在我的父主题中了。我猜需要弄清楚该怎么做。是直接在js文件里吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-17
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多