0

我正在使用 jcarousel 构建滚动幻灯片,需要进行一些自定义。每当项目成为轮播中的最后一个可见项目时,都会引用一个回调函数。

1. function mycarousel_itemLastInCallback(carousel, item, idx, state) {
          display('Item #' + idx + ' is now the last item');
      };

你可以在这里看到它是如何工作的。我想做的是更改此功能,以便显示器仅显示当前图像的标题。我会考虑将标题数据放在每张图片的 alt 标签中,但是我将如何访问它呢?我在函数内部尝试过这样的事情:

var theimage=item.next(); var thetext=theimage.alt; display('thetext');

......这没有用。我在我头上在这里!希望有人能启发我。

第二件事是,数据将自身附加到显示框中的先前数据。我需要每个标题来替换以前的标题。也不知道该怎么做。这是控制它的一段 jcarousel 代码:

变量行 = 1; function display(s) { // 如果可用,记录到 Firebug (getfirebug.com) //if (window.console != undefined && typeof window.console.log == 'function') // console.log(s);

      if (row >= 1000)
          var r = row;
      else if (row >= 100)
          var r = ' ' + row;
      else if (row >= 10)
          var r = '  ' + row;
      else
          var r = '   ' + row;

      jQuery('#display').html(jQuery('#display').html() + r + ': ' + s + '<br />').get(0).scrollTop += 10000;

      row++;
  };

任何帮助都非常感谢!谢谢

4

1 回答 1

1

首先,您可能应该考虑使用 attr('alt') 来访问元素的属性。

之后,如果您查看 display() 方法,它接受一个字符串。如果您需要它来显示名为 thetext 的变量,那么您的语法不正确,您需要类似以下内容:

var thetext= $(image).attr('alt'); 显示(文本);

在您的示例中,该行:

var theimage=item.next();

意味着“theimage”可能已经是一个 jquery 包装的 html 元素。如果是这样的话:

var thetext= image.attr('alt'); 显示(文本);

除此之外,我个人还需要查看示例网页。在 jsfiddler.net 上设置一个页面,如果您仍然卡住,请将链接放回此处

于 2010-07-21T12:14:08.520 回答