首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jquery中创建数组

在jquery中创建数组
EN

Stack Overflow用户
提问于 2012-05-14 21:18:11
回答 3查看 151关注 0票数 2

我在jQuery中有一个函数

代码语言:javascript
复制
  jQuery(function () {
      jQuery(".one").showcase({
          animation: { type: "fade" },
          titleBar: { autoHide: false },
          navigator: { autoHide: true }
      });
      prettyPrint();
      jQuery(".two").showcase({
          animation: { type: "fade" },
          titleBar: { autoHide: false },
          navigator: { autoHide: true }
      });
      prettyPrint();
      jQuery(".three").showcase({
          animation: { type: "fade" },
          titleBar: { autoHide: false },
          navigator: { autoHide: true }
      });
      prettyPrint();
  });

现在注意上面的代码。我将showcase函数重复了三次。我想通过数组创建函数一次。怎么可能。我看过jQuery数组的例子,但是看不懂。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-14 21:23:21

您可以执行以下操作:

代码语言:javascript
复制
  jQuery(function () {
      var arObj = ['.one','.two','.three'];

      for(var i = 0; i< arObj.length ; i++){
          jQuery(arObj[i]).showcase({
              animation: { type: "fade" },
              titleBar: { autoHide: false },
              navigator: { autoHide: true }
          });
          prettyPrint();
      }
  });
票数 2
EN

Stack Overflow用户

发布于 2012-05-14 21:20:44

最好的方法不是使用数组,而是将jQuery选择器更改为同时针对所有3个对象;

代码语言:javascript
复制
  jQuery(".one,.two,.three").showcase({
      animation: { type: "fade" },
      titleBar: { autoHide: false },
      navigator: { autoHide: true }
  });
  prettyPrint();

..。它使用multiple selector,尽管您可能想要向这些元素showcase(?)添加另一个类。并将其称为;

代码语言:javascript
复制
  jQuery(".showcase").showcase({
      animation: { type: "fade" },
      titleBar: { autoHide: false },
      navigator: { autoHide: true }
  });
  prettyPrint();

..。而不是。

票数 4
EN

Stack Overflow用户

发布于 2012-05-14 21:24:23

如果你想要一个基于数组的解决方案,你可以这样做:

代码语言:javascript
复制
jQuery.each([".one", ".two", ".three"], function(index, value) {
    jQuery(value).showcase({
        animation: { type: "fade" },
        titleBar: { autoHide: false },
        navigator: { autoHide: true }
    });
    prettyPrint();
});

...or:

代码语言:javascript
复制
function fadeAll(arr) {
    jQuery.each(arr, function(index, value) {
        jQuery(value).showcase({
            animation: { type: "fade" },
            titleBar: { autoHide: false },
            navigator: { autoHide: true }
        });
        prettyPrint();
    });
}

否则就听从马特的回答。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10584129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档