[英]Javascript array trouble
Its been a long day and I've learnt much about js but my heads fuzzled on this one, ok so I need to get one of the array numbers (depending on the one the user clicks into the settings below. but i have no idea how, ive tried reading up on arrays but i cant get my head around it. :/ 这是漫长的一天,我已经学到了很多关于js的知识,但是我对此感到困惑,好了,所以我需要获取一个数组编号(取决于用户单击以下设置的那个。)但我不知道我如何尝试读取数组,但我无法理解。
Sorry, I need to call a function every time I click on a different link and i need the functions to repond to each div seperatly. 抱歉,我每次单击不同的链接时都需要调用一个函数,并且需要该函数分别响应每个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
}
I hope i have explained myself well enough... sorry if i havent. 我希望我对自己的解释已经足够好了。
I know this works but it only works for one... 我知道这有效,但只适用于一个...
var settings = { var settings = {
objSlideTrigger: '#one', // link button id
objSlidePanel: '#content-one' // slide div class or id
}
Heres a js fiddle that shows the core element of what im trying to achieve. 这是一个js小提琴,显示了我试图实现的核心要素。 Howeve this is just a single link and content box, i want multiple links and content boxes.
然而,这只是一个链接和内容框,我想要多个链接和内容框。 that all respond individually to being selected.
所有这些都分别对被选中做出响应。 jsfiddle.net/BeU3U/6/
jsfiddle.net/BeU3U/6/
I think this could work for you. 我认为这可能对您有用。 Just make sure that
navLinks
is always the same length as navDivs
. 只要确保
navLinks
的长度始终与navDivs
相同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);
Output 输出量
[
{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"},
]
You can probably achieve this with an array of JSON elements. 您可能可以通过使用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"]
};
try this one below 在下面试试这个
var settings = function (rowIndex)
{
objSlideTrigger:navLink[rowIndex],
objSlidePanel:navDiv[rowIndex]
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.