1

我有带有 Rockettheme RokNavMenu 模块的 Joomla 2.5 站点,用于下拉导航。这是一个很棒的免费模块,基于 Mootools,有很多选项,但它缺少延迟下拉子项显示的选项。问题是下拉导航不在页面顶部,许多用户在将鼠标光标悬停在此元素上时会意外触发下拉菜单。

于是尝试在下拉菜单JS代码的各个地方添加.delay(),但是脚本很复杂,没有成功。

你可以在这里看到fusion.source.js(直接链接到js文件):http ://bit.ly/12UHbAX

使用以下代码触发菜单选项:

window.addEvent('domready', function() {
    new Fusion('ul.menutop', {
        pill: 0,
        effect: 'slide and fade',
        opacity:  1,
        hideDelay:  250,
        centered:  0,
        tweakInitial: {'x': -8, 'y': -10},
        tweakSubsequent: {'x':  -8, 'y':  -11},
        tweakSizes: {'width': 18, 'height': 20},
        menuFx: {duration:  300, transition: Fx.Transitions.Circ.easeOut},
        pillFx: {duration:  400, transition: Fx.Transitions.Back.easeOut}
    });
});

我真的很感激这方面的帮助,我在 stackoverflow.com 上阅读了很多主题,但是我找到的所有解决方案都需要大量重写 JS 代码。

问候

4

1 回答 1

1

为了做你想做的事,我建议对脚本进行一些更改(融合 .js 文件)和 CSS 修复。让我知道您是否可以找到并解决此问题。

第一- 你正在寻找的是:

this.myEffect.start().chain(function (e) {
    this.start.delay(100, this)
}).start({
    "margin-top": 0,
    opacity: this.options.opacity
}).chain(function () {
    this.showSubMenuComplete();
}.bind(this));

这在声明中发布的脚本的第 684 行else

第二- 脚本还没有为这个延迟做好准备,所以.fusion-submenu-wrapperCSS 中有一个边框阴影必须修复。

第三- 将 hideDelay 替换为更短的值,例如 500。已发布脚本的第 21 行。

4th(最后但并非最不重要!) - 将选项链接更改为链。已发布脚本的第 226 行。

于 2013-07-25T12:38:14.610 回答