2012-04-18 18 views
0

現在、GreyScaleホバー効果を適用しているjQueryプラグインを使用しています。プラグインは完全に機能します。ajax呼び出し後のjQuery関数の再初期化

プラグインがオンになっているページは、ajaxベースのフィルタリングを使用しています。このため、以下のコードは最初のロードでのみ正しく動作します。私は各フィルタの両方の要素を再初期化できる必要があります。私はjQueryの1.7.2を使用していますが、この作業を取得することができないとして、私は$(document).onで実験された

は...

$(function() { 
    // fade in the grayscaled images to avoid visual jump 
    $('.colour img').hide().fadeIn(1000); 
    }); 

    // user window.load to ensure images have been loaded 
    $(window).load(function() { 
    $('.colour img').greyScale({ 
     // call the plugin with non-defult fadeTime (default: 400ms) 
     fadeTime: 500, 
     reverse: false 
    }); 
    }); 
+0

あなたはいくつかのより多くのコード – mprabhat

答えて

1

は、あなただけの機能でそれを置くことができない、文書準備で、その関数を呼び出しますあなたのajaxコールの後にもう一度それを呼び出しますか?ような何か:

function YourFunction() { 
    $('.colour img').greyScale({ 
    // call the plugin with non-defult fadeTime (default: 400ms) 
     fadeTime: 500, 
     reverse: false 
    }); 
} 

はその後のような準備ができて文書にそれを呼び出す:あなたのAJAX呼び出しのコールバックに続いて

$(function() { 
    YourFunction(); 
}); 

もう一度YourFunction()を呼びますか?

+0

このdoesnのを共有することができますページのフィルタリングの結果として$(document).ready(function(){は再び呼び出されません) – dwarren

+0

これは、ページフィルタリング後にYourFunction()を自分で呼び出すときです。 – mattytommo

0

あなたは2つの機能を持ち、その後、あなたはそれが

function x() 
{ 
    // fade in the grayscaled images to avoid visual jump 
    $('.colour img').hide().fadeIn(1000); 
} 

function y() 
{ 
    $('.colour img').greyScale({ 
     // call the plugin with non-defult fadeTime (default: 400ms) 
     fadeTime: 500, 
     reverse: false 
} 

初期ロードにし、AJAX呼び出しの後にそれらを呼び出すしたいとき、これまでにそれらを呼び出すことができますプラグインと

関連する問題