需要帮助创建动态Javascript数组吗

需要帮助创建动态Javascript数组吗,javascript,html,css,dom,Javascript,Html,Css,Dom,第一部分: 我试图弄清楚如何使用DOM和Javascript创建一个包含多个列表中的链接的数组。 问题是我需要每个UL都有一个包含链接的唯一数组;我能找到的唯一唯一唯一的ID 在本例中要使用的是链接标记中的名称值。我将无法向标记中添加任何其他内容。 javascript引用将需要包含在一个脚本中,同时一个对脚本的引用 页面底部 第二部分: 我最终需要做的是隐藏每个列表,并用前两个链接替换它们, 以及两个链接下方的“查看全部”链接,单击该链接时,会将其他两个链接添加到列表中 同样,我不能添加任何标

第一部分: 我试图弄清楚如何使用DOM和Javascript创建一个包含多个列表中的链接的数组。 问题是我需要每个UL都有一个包含链接的唯一数组;我能找到的唯一唯一唯一的ID 在本例中要使用的是链接标记中的名称值。我将无法向标记中添加任何其他内容。 javascript引用将需要包含在一个脚本中,同时一个对脚本的引用 页面底部

第二部分: 我最终需要做的是隐藏每个列表,并用前两个链接替换它们, 以及两个链接下方的“查看全部”链接,单击该链接时,会将其他两个链接添加到列表中

同样,我不能添加任何标记、div等。;它必须完全基于以下信息、DOM和 javascript

谢谢你们的帮助

<ul>
    <li>
        <a href="#" name="obj_a">Section One, Article One</a>
    </li>
    <li>
        <a href="#" name="obj_b">Section One, Article Two</a>
    </li>
    <li>
        <a href="#" name="obj_c">Section One, Article Three</a>
    </li>
    <li>
        <a href="#" name="obj_d">Section One, Article Four</a>
    </li>
</ul>

<ul>
    <li>
        <a href="#" name="obj_e">Section Two, Article One</a>
    </li>
    <li>
        <a href="#" name="obj_f">Section Two, Article Two</a>
    </li>
    <li>
        <a href="#" name="obj_g">Section Two, Article Three</a>
    </li>
    <li>
        <a href="#" name="obj_h">Section Two, Article Four</a>
    </li>
</ul>

我正在使用jQuery作为解决方案;)

第一部分:

var list = new Array();
$.each($('ul'), function(index, value) {
  list.push(new Array());
  $.each($(value).find('li a'), function(index2, value2){
    list[list.length - 1].push(value2.href);
  });
});
第二部分:


我真的不明白这些要求,但是看看jQuery,它确实让这些工作变得简单。

很好,您有一个清晰的定义。你做了什么?关于第二部分中描述的最终目标(很好,你提到了):我不会使用第一部分中描述的列表数组。如果您不能更改标记,我将动态地向所有列表项添加一个类,前两个除外,例如
.extra item
,等等,并添加一个按钮/span/带有onclick事件的任何东西,该按钮/span/事件可切换
ul
的类名,例如切换到
.invisible
。如果将
.invisible.extra item{display:none}
添加到CSS中,则在单击切换按钮/span/which时,除前两项之外的所有项都将隐藏或显示。由于“Javascript引用需要包含在单个脚本中”的要求,听起来Javascript库不是一个选项是这样吗,OP?你可以在脚本中添加一个JS库,问题出在哪里,你不需要把jQuery放在另一个文件中;我确实可以访问yahoo YUI库,但在本例中不能访问jQuery。我认为Marcel上面的想法可能会非常有效。基本算法仍然是一样的。使用所有标准函数比使用jQuery的方便实用程序更为冗长。此外,使用jQuery,上述内容可以更简洁地写成类似
$(“ul:has(li>a)”).map(function(item){return$(item).find(“a”).filter(function(index){return index<2;})}
。实际上,您正在重新设计
map
filter
函数。