Drupal - 如何将数据属性添加到<ul>菜单</ul> </li>的<li>项目

时间:2014-01-14 14:33:14

标签: drupal-7 fullpage.js html5-data

这是一个名为fullPage.js的好脚本,位于https://github.com/alvarotrigo/fullPage.js

我设法加载了js文件和css文件,甚至用Void菜单模块,设法调用锚链接,但我正在努力与数据属性部分执行这个很酷的代码!任何帮助是极大的赞赏!如何在Drupal 7.25中使用数据属性?我的意思是,我需要将它们添加到菜单中,以便html看起来像这样:

<ul id="menu">
    <li data-menuanchor="firstPage"><a href="#firstPage">First slide</a></li>
    <li data-menuanchor="secondPage"><a href="#secondPage">Second slide</a></li>
    <li data-menuanchor="3rdPage"><a href="#3rdPage">Third slide</a></li>
    <li data-menuanchor="4thpage"><a href="#4thpage">Fourth slide</a></li>
</ul>

只想将其添加到Drupal的主菜单中。知道怎么样?我试图在我的主页上实现这一点并使用安装了Display Suite模块的自适应子主题,如果这有帮助的话。

已将以下内容添加到template.php中,但它完全没有区别:

function MY_THEME_NAME_menu_link(&$variables) {
  $variables['element']['#attributes']['data-menuanchor'] = substr($variables['element']['href'], 1);
  return theme_menu_link($variables);
}

我在这里做错了什么?

修改

您可以在此处下载sitemaniacs主题:http://dream-portal.net/dpdowns/MyProblem.zip 您可以从Drupal here下载自适应主题,然后将sitemaniacs复制到您的sites / all / themes文件夹,而不只是启用主题并转到您的主页。

还有一个名为fullPage的文件夹,它的示例在没有Drupal的情况下工作得很好。

要注意的文件:

/sites/all/themes/sitemaniacs/scripts/custom.js
/sites/all/themes/sitemaniacs/template.php
/sites/all/themes/sitemaniacs/css/example2.css
/sites/all/themes/sitemaniacs/sitemaniacs.info

如果您还有其他需要,请告诉我,k?

谢谢你!!!我所做的是创建4个基本页面,并使用Field Formatter Class Module为正文字段提供一个定义为section的类(管理显示时),而不是提升到首页。比我在另一个节点类型中使用HTML并使用NodeBlock Module将其作为块的Menu Bar部分中的菜单项输出,并使用网址<front>。如果您还需要其他任何内容,请告诉我,但我无法使用这种简单方法让它工作。我也尝试了很多方法,但不适合我。如果你发现一种有效的方法,或者其他地方可能出现问题,请告诉我....我正在拔掉我的头发。

尝试过直接的HTML,现在得到这个:

Uncaught TypeError: Cannot read property 'top' of undefined    jquery.fullPage.js?mzf0rp:506
scrollPage       jquery.fullPage.js?mzf0rp:506
doneResizing       jquery.fullPage.js?mzf0rp:889

第一个错误似乎发生在此行的scrollPage函数中:

var dtop = dest !== null ? dest.top : null;

dest.top上似乎未定义.top。知道为什么吗?

2 个答案:

答案 0 :(得分:0)

使用Menu Link Attributes模块,您可以在每个菜单项中添加自定义属性。

答案 1 :(得分:0)

对于“ href”,您可以在“结构”>“菜单”中创建的菜单路径中,在路径中使用<'front'>#4thpage(前面没有任何“小折点”),并将Menu Link Attributes模块用于其他属性