0

我目前正在使用一个应用 GreyScale 悬停效果的 jQuery 插件。该插件完美运行。

插件所在的页面使用基于 ajax 的过滤。因此,以下代码仅在初始加载时才能正常工作。我需要能够重新初始化每个过滤器上的两个元素。

我一直在尝试$(document).on使用 jQuery 1.7.2 但无法使其正常工作..

$(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
    });
  });
4

2 回答 2

1

你不能把它放在一个函数中,在文档中调用那个函数,然后在你的ajax调用之后再次调用它吗?就像是:

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

然后在准备好的文档上调用它,例如:

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

然后在你的 AJAX 调用的回调中YourFunction()再次调用?

于 2012-04-18T11:27:34.267 回答
0

你可以有两个函数,然后在你需要的时候调用它们

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 调用之后调用它们

于 2012-04-18T11:28:09.423 回答