在javascript中单击加载特定的div?

时间:2011-09-10 14:43:51

标签: javascript html

我不知道如何实际说出这个,所以这可能会令人困惑,抱歉。

我在这里有一个页面:http://dl.dropbox.com/u/3264697/calc/v2/index.html

在顶部,您会看到一个菜单,其中包含多个不同的功能 - 每个菜单都在自己的单独页面上。它可以表示为:

A | B | C | d

其中|表示页面,

所有使用的功能都在一个页面上,如下:

A + B + C + D

单击链接时可以看到A,点击它们时会触发B,C和D.

单击其中一个函数将加载该div并隐藏当前的div - 因此可以在页面之间来回切换而无需加载另一个页面。我改变了它,因为加载时间太长了。

然而,现在我想改变它。我希望结果如下:

A + B + C | d

然而,当在页面D上时,如果我单击链接B,将加载div A(因为它是单独页面上的默认div)

有没有办法在点击链接时影响哪些div加载?

1 个答案:

答案 0 :(得分:1)

我看到你的页面中有jQuery,所以我会用它来简化一些事情。您可以在链接中添加单击处理程序以显示其对应的div并隐藏其他div。给你的链接和divs id并给你的div一个共同的类:

$("#linkId").click(function() {
    $(".tabContent").hide();
    $("#tabContentId").show();
    return false;
});

编辑:要一次在所有链接上设置点击处理程序,您可以将其对应div的ID指定为链接中的自定义属性。然后绑定具有该自定义属性集的所有链接:

$("a[contentId]").click(function() {
    $(".content").hide();
    $("#" + this.getAttribute("contentId")).show();
    return false;
});

工作演示:http://jsfiddle.net/gilly3/fyRA4/