jQuery MiniUI

 找回密码
 立即注册
查看: 6150|回复: 12
打印 上一主题 下一主题

导航框架一切换菜单栏 [复制链接]

Rank: 1

跳转到指定楼层
楼主
发表于 2018-9-14 11:01:30 |只看该作者 |倒序浏览
用导航框架一做切换菜单栏功能时遇见一个问题,用你们自带的Menu方法做切换菜单栏的时候,传入相同的参数时,第一次可以获取到item,但是后面的item全部都是undefined,请问有什么事原理吗?


附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2018-9-14 11:35:25 |只看该作者
请提供例子来重现问题,包括数据

Rank: 1

板凳
发表于 2018-9-14 11:44:55 |只看该作者
本帖最后由 darren丶csl 于 2018-9-14 14:06 编辑
dforce 发表于 2018-9-14 11:35
请提供例子来重现问题,包括数据

这里有没有切换框架有示例或者文档,我就是在调用这个
var menu = new Menu("#mainMenu", {
            itemclick: function (item) {
                if (!item.children) {
                    activeTab(item);
                }
            }
        });
的时候出的错,item丢失,具体的你可以看我的demo

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

地板
发表于 2018-9-14 14:35:28 |只看该作者
darren丶csl 发表于 2018-9-14 11:44
这里有没有切换框架有示例或者文档,我就是在调用这个
var menu = new Menu("#mainMenu", {
            i ...

不建议每次重新生成menu,建议使用menu.loadData(data)来更新menu的数据
注意loadData方法需要优化一下
menu.js内
loadData: function (data) {
        this.options.data = data || [];
        this.refresh();
        this._idHash = [];
    },
加上标红的这行

Rank: 1

5#
发表于 2018-9-14 15:04:09 |只看该作者
本帖最后由 darren丶csl 于 2018-9-14 16:05 编辑
dforce 发表于 2018-9-14 14:35
不建议每次重新生成menu,建议使用menu.loadData(data)来更新menu的数据
注意loadData方法需要优化一下
...

加上后菜单栏点击事件就挂了...版主可以给一个类似的切换示例嘛?
因为我尝试了几次菜单栏点击时在menu.js中获取的item都是undefined。
直接效果就是加载不出对应Tab页或者菜单栏展不开

Rank: 8Rank: 8

6#
发表于 2018-9-14 16:55:13 |只看该作者
darren丶csl 发表于 2018-9-14 15:04
加上后菜单栏点击事件就挂了...版主可以给一个类似的切换示例嘛?
因为我尝试了几次菜单栏点击时在menu.js ...


1 修改你的方法,初次new生成menu,后面点击头部菜单就用loadData来加载数据,而不是重新创建
2 修改menu.js内loadData方法
  loadData: function (data) {
        this.options.data = data || [];
        this.refresh();
        this._idHash = null;
    },

前面写错了,这里应该是直接null清空


附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 1

7#
发表于 2018-9-14 17:25:58 |只看该作者
dforce 发表于 2018-9-14 16:55
1 修改你的方法,初次new生成menu,后面点击头部菜单就用loadData来加载数据,而不是重新创建
2 修改men ...

首先感谢版主大大的耐心解释及示例。
这种方法可以解决菜单栏加载问题。
但是只有初次加载的系统可以单击加载出Tab页,切换至其它系统时则获取不到item对象

Rank: 8Rank: 8

8#
发表于 2018-9-14 17:35:49 |只看该作者
本帖最后由 dforce 于 2018-9-14 17:37 编辑
darren丶csl 发表于 2018-9-14 17:25
首先感谢版主大大的耐心解释及示例。
这种方法可以解决菜单栏加载问题。
但是只有初次加载的系统可以单击 ...

可以获取到item对象的啊,itemclick里面我打印了item,切换菜单都是可以获取的。
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 1

9#
发表于 2018-9-14 17:43:24 |只看该作者
dforce 发表于 2018-9-14 17:35
可以获取到item对象的啊,itemclick里面我打印了item,切换菜单都是可以获取的。 ...

我把我这边的替换成了你的,还是不行哎,难道是menu.js不一样吗好纳闷

Rank: 8Rank: 8

10#
发表于 2018-9-14 17:49:27 |只看该作者
darren丶csl 发表于 2018-9-14 17:43
我把我这边的替换成了你的,还是不行哎,难道是menu.js不一样吗好纳闷


运行里面的main.htm测试。。。


附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Archiver|普加软件

GMT+8, 2024-9-28 07:24 , Processed in 1.068149 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部