Javascript数组问题

Javascript array trouble

本文关键字:问题 数组 Javascript      更新时间:2023-09-26

这是漫长的一天,我学到了很多关于js的知识,但我的头脑在这个问题上很模糊,好吧,所以我需要获取其中一个数组编号(取决于用户点击进入以下设置的数组编号。 但我不知道怎么做,我尝试阅读数组,但我无法理解它。 :/

抱歉,每次单击不同的链接时,我都需要调用一个函数,并且我需要函数分别回复到每个div。

var navLink = new Array();
    navLink[0] ='#one' < this is the Id of an href link.
    navLink[1] ='#two'
    navLink[2] ='#three'
    navLink[3] ='#four'
    navLink[4] ='#five'
    navLink[5] ='#six'  
var navDiv = new Array();
    navDiv[0] ='#content-one' < this is the Id of a content div.
    navDiv[1] ='#content-two'
    navDiv[2] ='#content-three'
    navDiv[3] ='#content-four'
    navDiv[4] ='#content-five'
    navDiv[5] ='#content-six'   
var settings = {
    objSlideTrigger: navLink[x], // link button id
    objSlidePanel: navDiv[x] // slide div class or id
}

我希望我已经很好地解释了自己...对不起,如果我没有。

我知道这有效,但它只适用于一个...

变量设置 = {

    objSlideTrigger: '#one', // link button id
    objSlidePanel: '#content-one' // slide div class or id
}

这是一个js小提琴,显示了im试图实现的核心元素。Howeve 这只是一个链接和内容框,我想要多个链接和内容框。所有人都对被选中做出单独反应。jsfiddle.net/BeU3U/6/

我认为这可能对你有用。只要确保navLinks始终与navDivs长度相同即可。

var navLinks = [
  '#one',
  '#two',
  '#three',
  '#four',
  '#five',
  '#six',
];
var navDivs = [
  '#content-one',
  '#content-two',
  '#content-three',
  '#content-four',
  '#content-five',
  '#content-six',
];
var settings = [];
for (var i=0; i<navLinks.length; i++) {
  settings.push({
    objSlideTrigger: navLinks[i],
    objSlidePanel: navDivs[i],
  });
};
console.log(settings);

输出

[
  {objSlideTrigger: "#one", objSlidePanel: "#content-one"},
  {objSlideTrigger: "#two", objSlidePanel: "#content-two"},
  {objSlideTrigger: "#three", objSlidePanel: "#content-three"},
  {objSlideTrigger: "#four", objSlidePanel: "#content-four"},
  {objSlideTrigger: "#five", objSlidePanel: "#content-five"},
  {objSlideTrigger: "#six", objSlidePanel: "#content-six"},
]

您可能可以使用 JSON 元素数组来实现这一点。

var nav = [
    {"navLink": "#one", "navDiv": "#content-one"},
    {"navLink": "#two", "navDiv": "#content-two"},
    {"navLink": "#three", "navDiv": "#content-three"},
    {"navLink": "#four", "navDiv": "#content-four"},
    {"navLink": "#five", "navDiv": "#content-five"},
    {"navLink": "#six", "navDiv": "#content-six"}
];
var settings = function (rowIndex) {
    objSlideTrigger: nav[rowIndex]["navLink"],
    objSlidePanel: nav[rowIndex]["navDiv"]
};

试试下面的这个

var settings = function (rowIndex)
{
    objSlideTrigger:navLink[rowIndex], 
    objSlidePanel:navDiv[rowIndex] 
}