I have filed these issues against the 7.x-2.x branch:

#2001616: Upgrade included Superfish library to the latest version 1.7.4 (currently shipping 1.4.8)
#1411250: Upgrade included hoverIntent library to r7 (currently shipping r5)
#2001612: Upgrade included bgiframe library to 3.0.1 (currently shipping 3.0.0)

There is an issue though: some of these js libraries require jQuery versions that do not ship with the default Drupal core:

- latest Superfish 1.7.4 mentions requirement for jQuery 1.7+:

Which versions of jQuery is the Superfish plugin compatible with?
The Superfish plugin is compatible with jQuery v1.7 and later. It also works with jQuery v1.9.0+ as of Superfish v1.5.0 and I strongly recommend you use it.

- hoverIntent r7 mentions requirement for jQuery 1.9.1+:

* hoverIntent r7 // 2013.03.11 // jQuery 1.9.1+
* http://cherne.net/brian/resources/jquery.hoverIntent.html

There is jQuery Update of course and with its help people can get Drupal 7 to use jQuery 1.8 (even 1.9 with the latest patch from #1901672-10: Offer latest jQuery 1.9.x as an option (currently 1.9.1).).

We also recently got #1411268: Support Libraries API for the js files., so people can override the versions of the js libraries we ship the module with with which ever version is the latest available by using Libraries API.

But all these require additional work and novice users might not be able to cope. So here's the plan:

1. We ship 7.x-2.x of Nice Menus with which ever versions of js libraries work with Drupal core out of the box. More advanced users can optionally install Libraries API and jQuery Update and upgrade these js libraries.

2. We create a new 7.x-3.x branch that requires both Libraries API and jQuery Update. This branch will ship without any js libraries and instead will require that users download the latest available versions under /sites/all/libraries. Since latest versions will be used in this branch, we can now easily implement #1148746: Support for Mega Dropdown Menus because the latest version of Superfish (after 1.7.3) supports mega menus:

v1.7.3 Alter JS to allow mega-menus. Provide mega-menu CSS and example page. Added bower.json. Resolve some jsHint issues.


xiukun.zhou’s picture

Sorry klonos.
7.3 branch will is a separate modules, the include latest version of Superfish, hoverintent and bgiframe. need jquery verison > 1.7


xiukun.zhou’s picture

commit: 0f936b0

xiukun.zhou’s picture

Status: Active » Needs review
klonos’s picture

I'm waiting for a few hours (it usually takes about 12 or 24) for the new 7.x-3.x-dev version to be built so I can test this and report back.

By reviewing the commit, I have only a few minor comments:

1. 'website' => 'http://docs.jquery.com/Plugins/bgiframe',

Should be changed to either point to the jQuery Plugin Repository:

'website' => 'http://plugins.jquery.com/bgiframe/',

...or the actual library page at github:

'website' => 'https://github.com/brandonaaron/bgiframe',

2. Also the 'website' => 'http://users.tpg.com.au/j_birch/plugins/superfish/', line should be changed to either point to the jQuery Plugin Repository:

'website' => 'http://plugins.jquery.com/superfish/',

...or the actual library page at github:

'website' => 'https://github.com/joeldbirch/superfish',

3. Why use version 1.7.2 of Superfish instead of the latest 1.7.4?

-    'version' => '1.4.8',
+    'version' => '1.7.2',
klonos’s picture

Status: Needs review » Needs work


xiukun.zhou’s picture

Category: task » feature
Status: Needs work » Needs review

Hi klonos,
Thanks for the posted and tested.


xiukun.zhou’s picture

Issue summary: View changes
Status: Needs review » Closed (fixed)
klonos’s picture

Status: Closed (fixed) » Active

@xiukun.zhou: Despite these commits, there is no actual 7.x-3.x branch created and no releases either. So, lets keep this issue open till we have a 3.x branch shown in the downloads section of the project page. Thanx.

xiukun.zhou’s picture

klonos’s picture

Status: Active » Closed (fixed)

Thanx for your very prompt actions Zhou! Now we can finally call it fixed ;)