跳转到主要内容
mahonghong 提交于 20 June 2015

问题描述:

在header区域中设置了 superfish1, 鼠标放上去的时候无法正常显示dropdown菜单, 尝试在区块中添加superfish2在同一区, superfish2 中 下拉菜单能正常显示, 不过superfish1中的下拉菜单无法显示.

在调试工具中的 console 可以看到报错,把鼠标放上去错误会一直弹出来!

解决方法:

尝试了很多种方法, 最后找到了原因所在。

  1. 检查你的 jQuery 版本,  如果版本是1.9或以上的情况下,需要手动安装 jQuery $.Browser 插件 jQuery $.Browser 插件: https://github.com/gabceb/jquery-browser-plugin
  2. 添加JS文件到主题文件夹下的 .info 里
  3. 另一种方式, 下载 development 版本的库文件(这个版本会先检查 $.browser)  (Superfish.js 在 Drupal 8 中不会包含 IE6,7,所以不会存在这个问题了.)

只能怪自己没有认真的去看插件要求! 所以提醒下各位,下次使用插件的时候一定要注意要求是神马!

这次附上 Superfish 官方 的要求!

7.x-1.9

Requirements:     Superfish library         Download Superfish library 1.x for the latest stable release.         Download Superfish library master branch for the latest development release.     jQuery Update         Drupal 6 users: jQuery 1.3.x or higher.         (sfTouchscreen in the Master branch of the Superfish library requires at least jQuery 1.4.)         Drupal 7 users: jQuery 1.6.1 or higher, only if you want to use the jQuery Easing plugin animation effects.         For jQuery 1.9 and above you should either manually include the jQuery $.Browser plugin, via your theme .info file for example, or use the latest development release with the master branch of the Superfish library, which checks $.browser before using it. (Note the superfish.js for Drupal 8 won't include the IE6\7 hack hence no $.browser trouble!)

Drupal 版本