使用当前月份作为目标,使用事件进入特殊月份

时间:2014-05-04 00:13:52

标签: javascript function events timeline onload-event

我有一个很长时间的事件清单。这是一个普通的html表。现在我想避免用户向下滚动列表以找到正确的月份和当前事件。 (由于不同的原因,切换到某种日历不是选项。)在每个月名称之前设置了一个锚点(1月的Month0,2月的Month1等),我可以通过脚本获取页面加载吗?

我现在已经有一段时间没有写过自己的javascripts了,但是我想用这样的东西

getMonth()0-11

如果getMonth(0) onLoad转到“a href =#Month0”

这可以起作用吗?

2 个答案:

答案 0 :(得分:0)

对于要跳转到的部分,请使用类似下面代码的锚点。

<a name="Month0"></a>January

然后,要创建一个跳转到那里的链接,你可以这样做。

<a href="#Month0">Jump to January</a>

你也可以制作一个&#34; Go to Top&#34;按钮,不在标签后放任何东西。

<a href="#">Go to the top of the page.</a>

当与CSS的位置:固定

结合使用时,此功能特别有用
<div style="position:fixed;bottom:0px;right:0px"><a href="#">Go to top</a></div>

这将导致按钮始终位于左下方。

如果要在Javascript中完成此跳转效果,可以使用location对象,如下所示:

location.hash="#Month0";

你也可以很容易地将它变成一个函数!

function getMonth(anchornum) {
location.hash="Month"+anchornum;
}

干杯!

答案 1 :(得分:0)

您无需在月份名称旁边添加<a>标记。您可以在任何类型的元素上设置id,并使其表现为跳跃锚。

如果您设置了一个id的链接,它会将页面跳转到具有该ID的元素。所以:

<a href="#month0"></a>

将跳转到id为month0的元素,在您的情况下,它可能是一个表元素:

<tr id="month0"></tr> 

对于你的锚点,你应该使用id属性而不是名字。浏览器将首先按id查找您的元素,如果找不到任何具有请求ID的元素,则按名称查找。

设置窗口的位置也会导致跳转到具有相应id的任何元素。

window.location.hash = 'month0';

如果页面加载时哈希已在URL中,则不需要任何javascript即可跳转到该位置。它会自动发生。