我有一个网站,当您单击索引页面上的菜单时,我希望用户被重定向到页面存档,并带有指向该特定项目的 anchor 。因此,当您单击项目 355 时,您会被重定向到 http://website.com/archive/# 355
我使用了这个html代码:
<a class="nav-menu <?php echo $post->ID; ?>"
data-nav="<?php echo $post->ID; ?>"
href="/archive#<?php echo $post->ID; ?>" >
使用此代码,我添加了一个 data-nav 属性来提取菜单的每个链接的内容 (355),但我似乎无法获取脚本中使用的这些值.
$( "a.nav-menu" ).each(function(){
var testdata = $(this).data("nav");
console.log(testdata);
});
在我的控制台日志中,我得到321、340、355等,所以我的所有项目都是“名称” 这是脚本,我想获取 anchor 部分中 testdata 的值
$('#fullpage').fullpage({
scrollingSpeed: 1000,
anchors: ['364', '355', '341', '334', '321', '315'],
continuousVertical: true,
fixedElements: '#button1Id, #button2Id'
});
我已经搜索过如何执行此操作,但没有找到方法..
最佳答案
我已经为您指定的项目做了一个测试功能
我对它们进行测试的 html 项目是
<a class="nav-menu 364" data-nav="364" href="/archive#364" >Test1</a>
<a class="nav-menu 355" data-nav="355" href="/archive#355" >Test2</a>
<a class="nav-menu 341" data-nav="341" href="/archive#341" >Test3</a>
<a class="nav-menu 334" data-nav="334" href="/archive#334" >Test4</a>
<a class="nav-menu 321" data-nav="321" href="/archive#321" >Test5</a>
<a class="nav-menu 315" data-nav="315" href="/archive#315" >Test6</a>
处理这些项目的脚本是
var array = [];
$( "a.nav-menu" ).each(function(){
var testdata = $(this).data("nav");
array.push(testdata);
});
console.log(array);
我在遍历项目之前已启动空数组,然后我可以在全页功能中使用它,如下所示
$('#fullpage').fullpage({
scrollingSpeed: 1000,
anchors: array,
continuousVertical: true,
fixedElements: '#button1Id, #button2Id'
});
如果你希望项目是数组中的字符串,你应该使用
var testdata = $(this).data("nav").toString();
希望我的回答对你有用
关于javascript - Jquery 在函数中包含先前的 var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38183332/