2011-12-06 7 views
1

im jCycleでCufonを使用してカルーセルを作成する。私はホバーイベントでリンクの色を変えたいと思っています。これは正常に動作しますが、0.5秒のような少し面倒な遅延があります。ホバリング時のCufonリフレッシュ遅延

私は既にcufon.refresh()を使用していますが、十分に機能しません。私が使用している

コード:誰も私を助けることができる場合

(function($) { 

    $(document).ready(function() { 

     $('#homepage_slideshow').before('<div id="nav">').cycle({ 
      fx     : 'fade', 
      pause    : 1, 
      speed    : 'fast', 
      timeout    : 5000, 
      pager    : '#nav', 
      slideResize   : false, 
      containerResize  : false, 
      pagerEvent   : 'mouseover', 
      fastOnEvent   : true, 
      pause: 1, 
      pagerAnchorBuilder: function(index, element) { 
        var title  = $('.slide_title a', element).remove().text(); 
        var undertitle = $('.slide_title .undertitle', element).remove().text(); 

        var atitle = $('<a />').attr('href', '#').text(title); 
        var sutitle = $('<div class="undertitle" />').text(undertitle); 
        var div  = $('<div />').addClass('slideshow_tab'); 
        var lnk  = $('.slide_img a', element); 

        div.append(atitle); 
        div.append(sutitle); 

        if (lnk.length) div.click(function(e) { 
         e && e.preventDefault(); 
         window.location.href = $(lnk[ lnk.length - 1]).attr('href'); 
        }) 
        else { 
         div.css('cursor','default'); 
         div.find('a').css('cursor','default'); 
        };  

        return div; 

      }, 

      after: function(){ Cufon.refresh('.slideshow_tab a'); } 
     }); 

      Cufon.replace('.slideshow_tab a'); 

      Cufon.now(); 

    }); 

})(jQuery); 

- 私は実際にそれをapprecieteでしょう。

答えて

2

サイクル「後」関数が呼び出される前に、ネストされたpageranchorbuilder関数/コードが実行されている可能性があります。ホバー機能をより直接的に実装して、より直接的な行動を起こしてみてください。

私はjquery .hoverとコールバック関数内で.refreshを実装したとき、同じパフォーマンスの問題を抱えていましたが、実際には非常にうまい結果を得ました。

$(".slidehow_tab a").hover(
    function() { 
     $(this).addClass("hover"); 
     Cufon.refresh(); 
    }, 
    function() { 
     $(this).removeClass("hover"); 
     Cufon.refresh(); 
    } 
); 
関連する問題