【问题标题】:Use data from array as variable使用数组中的数据作为变量
【发布时间】:2016-06-19 15:05:50
【问题描述】:

如果有一个数组,其中包含我在项目中使用的一些变量名称。

var frau = ['frau1', 'frau2', 'frau3', 'frau4', 'frau5'];

我想循环遍历数组,然后将数组的数据用于 snap.svg 函数:

function noneopacityFrau(){
  for (index = 0; index < frau.length; ++index) {
    frau[index].attr({opacity: '0'});
  }
}

我试着让它像这样工作:

function noneopacityFrau(){ 
  frau1.attr({opacity: '0'});
  frau2.attr({opacity: '0'});
  frau3.attr({opacity: '0'});
  frau4.attr({opacity: '0'});
  frau5.attr({opacity: '0'});
}

【问题讨论】:

  • attr() 是在 jQuery 上定义的函数。 frau[index]字符串。您一定遇到了错误。
  • 你想达到什么目的??
  • frau[index] 不是一个元素,所以你绝对不能做你正在尝试的事情,但如果这是一个元素 id,那么你可以做类似 document.getElementById(frau[index]).attr( )。除了属性语法不正确
  • 至少添加标记..

标签: javascript arrays loops for-loop svg


【解决方案1】:

现在我假设这使用 jquery,但不确定如果数组中的元素是类的名称,那么这里是:

function noneopacityFrau(){
  for (index = 0; index < frau.length; ++index) {
    $("."+frau[index]).attr({opacity: '0'});
  }
}

如果数组的元素是 id 的:

 function noneopacityFrau(){
      for (index = 0; index < frau.length; ++index) {
        $("#"+frau[index]).attr({opacity: '0'});
      }
    }

很有可能我错了,如果是,请不要考虑这个答案。 :/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多