forked from jayism/superfish-reloaded
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit a6b3e91
Showing
12 changed files
with
786 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
Changelog for Superfish - a jQuery menu plugin | ||
|
||
v1.2.1: altered 2nd July 07. added hide() before animate to make work for jQuery 1.1.3. | ||
|
||
v1.2.2: altered 2nd August 07. changed over function .find('ul') to .find('>ul') for smoother animations | ||
Also deleted the iframe removal lines - not necessary it turns out | ||
|
||
v1.2.3: altered jquery 1.1.3.1 broke keyboard access - had to change quite a few things and set display:none on the | ||
.superfish rule in CSS instead of top:-999em | ||
|
||
v1.3: Pretty much a complete overhaul to make all original features work in 1.1.3.1 and above. | ||
.superfish rule reverted back to top:-999em (which is better). | ||
|
||
v1.3.1: altered 'li[ul]' to $('li:has(ul)') to work with jQuery 1.2 | ||
|
||
v1.3.2: added onshow callback option as requested - 'this' keyword refers to revealed ul. | ||
fixed bug whereby multiple menus on a page shared options. Now each menu can have separate options. | ||
fixed IE6 and IE7 bug whereby under certain circumstances => 3rd tier menus appear instantly with text missing when revisited | ||
|
||
v1.3.3: altered event attachment selectors for performance increase on menu setup. | ||
|
||
v1.3.4: fixed pathClass bug as current path was not being restored. Still doesn't if using keyboard nav (will work on that). | ||
|
||
v1.4: store options objects in array $.superfish.o. Also provide public access to $.superfish.defaults | ||
provided backward compat for jQuery versions less than 1.2 via oldJquery option - will use li[ul] or li:has(ul) as needed | ||
added more callbacks, also added option to disable hoverIntent usage if that plugin is detected | ||
|
||
v1.4.1: fixed current path not being restored when using keyboard to tab away from the menu completely | ||
optimised code further - now less code | ||
removed addself() in favour of backward compatible add(this) | ||
also remove new mouseenter/mouseleave events on window.unload (due to paranoia) | ||
|
||
v1.4.2: 3rd July 2008. added semi-colon at start of superfish.js file to avert script concatenation errors | ||
added pathLevels option to limit the depth of submenus that get restored by pathClass | ||
CSS of main example hugely simplified - other example CSS files less-so. | ||
- top level menu items are not fixed width | ||
- only need to set submenu widths in one place. | ||
- various other improvements. | ||
- class names used in all CSS files are changed to be less generic | ||
released optional Supersubs plugin which dynamically adjusts submenu widths | ||
attach everything to jQuery.fn.superfish to clean up jQuery namespace | ||
removed the multi-tier-all-horizontal-example as it was never a great idea and doesn't seem to be in use | ||
Update documentation text and remove certain caveats which were there to support users of much older versions of Superfish | ||
Documentation now show how to apply bgIgrame 2.1 - it's much easier than before | ||
Add all links and their focus and blur events to the onunload unbind - paranoid about memory leaks | ||
|
||
v1.4.3 5th July 2008. documentation completely redone using Mike Alsup's templates. | ||
CSS revised so that all types of menu use superfish.css as a base. Include additional CSS files to acheive alternate styles. | ||
class="sf-menu sf-vertical" creates vertical menu, class="sf-menu sf-navbar" creates nav-bar style menu | ||
|
||
v1.4.4 7th July 2008. arrows feature added. If option 'autoArrows' is true, auto-appends (spans) to anchors that have a ul submenu sibling, | ||
and adds class 'sf-with-ul' to anchor. | ||
CSS added to style new arrows, including an 8-bit alpha (NOT INDEXED!) transparent png of arrow - degrades to solid for IE6. | ||
Manually add arrow mark-up to docs and disable autoArrows (via defaults option) to maintain decent performance (for docs page) | ||
Update docs, including zip download, to suit. | ||
Fix CSS bug that had the third tier of the navbar-style menu visible when JS not available. | ||
|
||
v1.4.5 9 July 2008. decreased code weight | ||
added drop shadows for capable browsers - added css and 8-bit alpha transparent png image for shadow | ||
remove support for jQuery v<1.2 | ||
remove unload clean-up which was there to solve garbage collection problems in early jQuery versions | ||
remove toggling 'visibility' on hide and show which as a fix for an IE bug that is no longer exhibited | ||
removed need for getOpts, rewrote getMenu | ||
use [].join('') instead of string concatenation for performance increase - probably very slight in this case | ||
change selector in 'over' function from '.'+o.hoverClass to 'li.'+o.hoverClass | ||
|
||
v1.4.6 added workaround for IE7 shadows. If animation alters opacity then shadow is hidden during the animation and appears after. | ||
This required some JS and a line of CSS, so created shortcut references to lighten code further. | ||
|
||
v1.4.7 added back in the visibility toggle that was removed in 1.4.5 as the bug is indeed still exhibited by IE6 & 7 | ||
tweaked the look of the shadow slightly and use nicer 32bit png as I now find they behave the same as 8bit png with regard to fades in IE7 | ||
|
||
v1.4.8 fix over-sight: using 32bit png meant that the shadow image did show in IE6. Rather than go back to 8bit, add code to exclude IE6 from getting shadow class. | ||
use new folder structure recommended by Matt from TopicTrack, for easier updates. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
|
||
/*** adding the class sf-navbar in addition to sf-menu creates an all-horizontal nav-bar menu ***/ | ||
.sf-navbar { | ||
background: #BDD2FF; | ||
height: 2.5em; | ||
padding-bottom: 2.5em; | ||
position: relative; | ||
} | ||
.sf-navbar li { | ||
background: #AABDE6; | ||
position: static; | ||
} | ||
.sf-navbar a { | ||
border-top: none; | ||
} | ||
.sf-navbar li ul { | ||
width: 44em; /*IE6 soils itself without this*/ | ||
} | ||
.sf-navbar li li { | ||
background: #BDD2FF; | ||
position: relative; | ||
} | ||
.sf-navbar li li ul { | ||
width: 13em; | ||
} | ||
.sf-navbar li li li { | ||
width: 100%; | ||
} | ||
.sf-navbar ul li { | ||
width: auto; | ||
float: left; | ||
} | ||
.sf-navbar a, .sf-navbar a:visited { | ||
border: none; | ||
} | ||
.sf-navbar li.current { | ||
background: #BDD2FF; | ||
} | ||
.sf-navbar li:hover, | ||
.sf-navbar li.sfHover, | ||
.sf-navbar li li.current, | ||
.sf-navbar a:focus, .sf-navbar a:hover, .sf-navbar a:active { | ||
background: #BDD2FF; | ||
} | ||
.sf-navbar ul li:hover, | ||
.sf-navbar ul li.sfHover, | ||
ul.sf-navbar ul li:hover li, | ||
ul.sf-navbar ul li.sfHover li, | ||
.sf-navbar ul a:focus, .sf-navbar ul a:hover, .sf-navbar ul a:active { | ||
background: #D1DFFF; | ||
} | ||
ul.sf-navbar li li li:hover, | ||
ul.sf-navbar li li li.sfHover, | ||
.sf-navbar li li.current li.current, | ||
.sf-navbar ul li li a:focus, .sf-navbar ul li li a:hover, .sf-navbar ul li li a:active { | ||
background: #E6EEFF; | ||
} | ||
ul.sf-navbar .current ul, | ||
ul.sf-navbar ul li:hover ul, | ||
ul.sf-navbar ul li.sfHover ul { | ||
left: 0; | ||
top: 2.5em; /* match top ul list item height */ | ||
} | ||
ul.sf-navbar .current ul ul { | ||
top: -999em; | ||
} | ||
|
||
.sf-navbar li li.current > a { | ||
font-weight: bold; | ||
} | ||
|
||
/*** point all arrows down ***/ | ||
/* point right for anchors in subs */ | ||
.sf-navbar ul .sf-sub-indicator { background-position: -10px -100px; } | ||
.sf-navbar ul a > .sf-sub-indicator { background-position: 0 -100px; } | ||
/* apply hovers to modern browsers */ | ||
.sf-navbar ul a:focus > .sf-sub-indicator, | ||
.sf-navbar ul a:hover > .sf-sub-indicator, | ||
.sf-navbar ul a:active > .sf-sub-indicator, | ||
.sf-navbar ul li:hover > a > .sf-sub-indicator, | ||
.sf-navbar ul li.sfHover > a > .sf-sub-indicator { | ||
background-position: -10px -100px; /* arrow hovers for modern browsers*/ | ||
} | ||
|
||
/*** remove shadow on first submenu ***/ | ||
.sf-navbar > li > ul { | ||
background: transparent; | ||
padding: 0; | ||
-moz-border-radius-bottomleft: 0; | ||
-moz-border-radius-topright: 0; | ||
-webkit-border-top-right-radius: 0; | ||
-webkit-border-bottom-left-radius: 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
/*** adding sf-vertical in addition to sf-menu creates a vertical menu ***/ | ||
.sf-vertical, .sf-vertical li { | ||
width: 10em; | ||
} | ||
/* this lacks ul at the start of the selector, so the styles from the main CSS file override it where needed */ | ||
.sf-vertical li:hover ul, | ||
.sf-vertical li.sfHover ul { | ||
left: 10em; /* match ul width */ | ||
top: 0; | ||
} | ||
|
||
/*** alter arrow directions ***/ | ||
.sf-vertical .sf-sub-indicator { background-position: -10px 0; } /* IE6 gets solid image only */ | ||
.sf-vertical a > .sf-sub-indicator { background-position: 0 0; } /* use translucent arrow for modern browsers*/ | ||
|
||
/* hover arrow direction for modern browsers*/ | ||
.sf-vertical a:focus > .sf-sub-indicator, | ||
.sf-vertical a:hover > .sf-sub-indicator, | ||
.sf-vertical a:active > .sf-sub-indicator, | ||
.sf-vertical li:hover > a > .sf-sub-indicator, | ||
.sf-vertical li.sfHover > a > .sf-sub-indicator { | ||
background-position: -10px 0; /* arrow hovers for modern browsers*/ | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
|
||
/*** ESSENTIAL STYLES ***/ | ||
.sf-menu, .sf-menu * { | ||
margin: 0; | ||
padding: 0; | ||
list-style: none; | ||
} | ||
.sf-menu { | ||
line-height: 1.0; | ||
} | ||
.sf-menu ul { | ||
position: absolute; | ||
top: -999em; | ||
width: 10em; /* left offset of submenus need to match (see below) */ | ||
} | ||
.sf-menu ul li { | ||
width: 100%; | ||
} | ||
.sf-menu li:hover { | ||
visibility: inherit; /* fixes IE7 'sticky bug' */ | ||
} | ||
.sf-menu li { | ||
float: left; | ||
position: relative; | ||
} | ||
.sf-menu a { | ||
display: block; | ||
position: relative; | ||
} | ||
.sf-menu li:hover ul, | ||
.sf-menu li.sfHover ul { | ||
left: 0; | ||
top: 2.5em; /* match top ul list item height */ | ||
z-index: 99; | ||
} | ||
ul.sf-menu li:hover li ul, | ||
ul.sf-menu li.sfHover li ul { | ||
top: -999em; | ||
} | ||
ul.sf-menu li li:hover ul, | ||
ul.sf-menu li li.sfHover ul { | ||
left: 10em; /* match ul width */ | ||
top: 0; | ||
} | ||
ul.sf-menu li li:hover li ul, | ||
ul.sf-menu li li.sfHover li ul { | ||
top: -999em; | ||
} | ||
ul.sf-menu li li li:hover ul, | ||
ul.sf-menu li li li.sfHover ul { | ||
left: 10em; /* match ul width */ | ||
top: 0; | ||
} | ||
|
||
/*** DEMO SKIN ***/ | ||
.sf-menu { | ||
float: left; | ||
margin-bottom: 1em; | ||
} | ||
.sf-menu a { | ||
border-left: 1px solid #fff; | ||
border-top: 1px solid #CFDEFF; | ||
padding: .75em 1em; | ||
text-decoration:none; | ||
} | ||
.sf-menu a, .sf-menu a:visited { /* visited pseudo selector so IE6 applies text colour*/ | ||
color: #13a; | ||
} | ||
.sf-menu li { | ||
background: #BDD2FF; | ||
} | ||
.sf-menu li li { | ||
background: #AABDE6; | ||
} | ||
.sf-menu li li li { | ||
background: #9AAEDB; | ||
} | ||
.sf-menu li:hover, .sf-menu li.sfHover, | ||
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active { | ||
background: #CFDEFF; | ||
outline: 0; | ||
} | ||
|
||
/*** arrows **/ | ||
.sf-menu a.sf-with-ul { | ||
padding-right: 2.25em; | ||
min-width: 1px; /* trigger IE7 hasLayout so spans position accurately */ | ||
} | ||
.sf-sub-indicator { | ||
position: absolute; | ||
display: block; | ||
right: .75em; | ||
top: 1.05em; /* IE6 only */ | ||
width: 10px; | ||
height: 10px; | ||
text-indent: -999em; | ||
overflow: hidden; | ||
background: url('../images/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */ | ||
} | ||
a > .sf-sub-indicator { /* give all except IE6 the correct values */ | ||
top: .8em; | ||
background-position: 0 -100px; /* use translucent arrow for modern browsers*/ | ||
} | ||
/* apply hovers to modern browsers */ | ||
a:focus > .sf-sub-indicator, | ||
a:hover > .sf-sub-indicator, | ||
a:active > .sf-sub-indicator, | ||
li:hover > a > .sf-sub-indicator, | ||
li.sfHover > a > .sf-sub-indicator { | ||
background-position: -10px -100px; /* arrow hovers for modern browsers*/ | ||
} | ||
|
||
/* point right for anchors in subs */ | ||
.sf-menu ul .sf-sub-indicator { background-position: -10px 0; } | ||
.sf-menu ul a > .sf-sub-indicator { background-position: 0 0; } | ||
/* apply hovers to modern browsers */ | ||
.sf-menu ul a:focus > .sf-sub-indicator, | ||
.sf-menu ul a:hover > .sf-sub-indicator, | ||
.sf-menu ul a:active > .sf-sub-indicator, | ||
.sf-menu ul li:hover > a > .sf-sub-indicator, | ||
.sf-menu ul li.sfHover > a > .sf-sub-indicator { | ||
background-position: -10px 0; /* arrow hovers for modern browsers*/ | ||
} | ||
|
||
/*** shadows for all but IE6 ***/ | ||
.sf-shadow ul { | ||
background: url('../images/shadow.png') no-repeat bottom right; | ||
padding: 0 8px 9px 0; | ||
-moz-border-radius-bottomleft: 17px; | ||
-moz-border-radius-topright: 17px; | ||
-webkit-border-top-right-radius: 17px; | ||
-webkit-border-bottom-left-radius: 17px; | ||
} | ||
.sf-shadow ul.sf-shadow-off { | ||
background: transparent; | ||
} |
Oops, something went wrong.