Vous êtes sur la page 1sur 9

/* * ====================================================================== * ---------------------------------------------------------------------* zFPmenu: zon Fixed-Position Navigation/Share Menu * Author: zon * Website: http://inimu.

com * ---------------------------------------------------------------------* You may use and/or modify the codes below and its associated files * as long as you leave the author credit remain intact * ---------------------------------------------------------------------* ====================================================================== */ /* * ---------------------------------------------------------------------* Credits: * 1. CSS Drop-Down Menu by Live Web Institute (http://www.lwis.net) * 2. Scrolling with jQuery by Codrops (http://tympanus.net/codrops) * 3. addLoadEvent by Simon Willison (http://simonwillison.net/) * 4. jQuery by jQuery Javascript Library (http://www.jquery.com) * ---------------------------------------------------------------------*/ /* // user variable: // --------------------------------------------------------------------var zfpm_colorTheme = 'dark'; // 'dark' or 'light' var zfpm_customBackgroundImage = ''; // example: 'http://example.com/path/to/ image.jpg' var zfpm_customBackgroundColor = ''; // example: '#FFFFFF' var zfpm_shareBox = 'yes'; // 'yes' or 'no' var zfpm_shareBoxPosition = 'left'; // 'left' or 'right' var zfpm_shareBoxCustomWidth = ''; // example: '300' var zfpm_waitForPageLoad = 'yes'; // 'yes' or 'no' var zfpm_ieUpgradeMessage = 'yes'; // 'yes' or 'no' var zfpm_ieUpgradeMessageText = ''; // example: 'Please upgrade' var zfpm_ieUpgradeMessageForIe6or7 = 6; // 6 or 7 (number only, without quotes) // self hosted var zfpm_rootLocation = ''; var zfpm_jsLocation = ''; var zfpm_cssLocation = ''; var zfpm_imgLocation = ''; */ // check container element // --------------------------------------------------------------------if (document.getElementById('zfpm_div') == null) { var zfpm_divTag = document.createElement('div'); zfpm_divTag.id = 'zfpm_div'; zfpm_divTag.style.display = 'none'; bodyElement.appendChild(zfpm_divTag); } else { zfpm_divTag = document.getElementById('zfpm_div'); zfpm_divTag.style.display = 'none'; } if (document.getElementById('zfpm_ul') == null) { var zfpm_ulTag = document.createElement('ul'); zfpm_ulTag.id = 'zfpm_ul'; zfpm_divTag.appendChild(zfpm_ulTag);

} else { zfpm_ulTag = document.getElementById('zfpm_ul'); } // get the head and body element // --------------------------------------------------------------------var headElement = document.getElementsByTagName('head')[0]; var bodyElement = document.getElementsByTagName('body')[0]; // set folder location // --------------------------------------------------------------------if (typeof zfpm_rootLocation != 'undefined') { if (zfpm_rootLocation != '') { var zfpm_rootFolder = zfpm_rootLocation; } else { var zfpm_rootFolder = 'http://zfpmenu.googlecode.com/svn/trunk/' ; } } else { var zfpm_rootFolder = 'http://zfpmenu.googlecode.com/svn/trunk/'; } if (typeof zfpm_jsLocation != 'undefined') { if (zfpm_jsLocation != '') { var zfpm_jsFolder = zfpm_jsLocation; } else { var zfpm_jsFolder = zfpm_rootFolder+'js/'; } } else { var zfpm_jsFolder = zfpm_rootFolder+'js/'; } if (typeof zfpm_cssLocation != 'undefined') { if (zfpm_cssLocation != '') { var zfpm_cssFolder = zfpm_cssLocation; } else { var zfpm_cssFolder = zfpm_rootFolder+'css/'; } } else { var zfpm_cssFolder = zfpm_rootFolder+'css/'; } if (typeof zfpm_imgLocation != 'undefined') { if (zfpm_imgLocation != '') { var zfpm_imgFolder = zfpm_imgLocation; } else { var zfpm_imgFolder = zfpm_rootFolder+'img/'; } } else { var zfpm_imgFolder = zfpm_rootFolder+'img/'; } // // // if preload images --------------------------------------------------------------------check custom background image (typeof zfpm_customBackgroundImage != 'undefined') { if (zfpm_customBackgroundImage != '') { var zfpm_bgImageDark = zfpm_customBackgroundImage; var zfpm_bgImageLight = zfpm_customBackgroundImage; } else {

var zfpm_bgImageDark = zfpm_imgFolder+'bg-dark.png'; var zfpm_bgImageLight = zfpm_imgFolder+'bg-light.png'; } } else { var zfpm_bgImageDark = zfpm_imgFolder+'bg-dark.png'; var zfpm_bgImageLight = zfpm_imgFolder+'bg-light.png'; } var zfpm_Img = new Array(); function zfpm_preloadImages() { for (i = 0; i < zfpm_preloadImages.arguments.length; i++) { zfpm_Img[i] = new Image() zfpm_Img[i].src = zfpm_preloadImages.arguments[i] } } zfpm_preloadImages( zfpm_imgFolder+'arrow-menu-box-dark.png', zfpm_imgFolder+'arrow-menu-box-light.png', zfpm_imgFolder+'arrow-menu-dir-right-dark.png', zfpm_imgFolder+'arrow-menu-dir-right-light.png', zfpm_imgFolder+'arrow-menu-dir-up-dark.png', zfpm_imgFolder+'arrow-menu-dir-up-light.png', zfpm_imgFolder+'arrow-scroll-bottom-dark.png', zfpm_imgFolder+'arrow-scroll-bottom-light.png', zfpm_imgFolder+'arrow-scroll-top-dark.png', zfpm_imgFolder+'arrow-scroll-top-light.png', zfpm_bgImageDark, zfpm_bgImageLight, zfpm_imgFolder+'info.png' ); // theme selection check // --------------------------------------------------------------------var zfpm_theme = ''; if (typeof zfpm_colorTheme != 'undefined') { if (zfpm_colorTheme == 'light') { var zfpm_theme = 'light'; } else { var zfpm_theme = 'dark'; } } else { var zfpm_theme = 'dark'; } // IE browser checking // --------------------------------------------------------------------var IE6min = false; var IE6plus = false; var IE7plus = false; var IE8plus = false; function zfpm_getIeVer() { var rv = -1; if (navigator.appName == 'Microsoft Internet Explorer') { var ua = navigator.userAgent; var re = new RegExp('MSIE ([0-9]{1,}[\.0-9]{0,})'); if (re.exec(ua) != null) { rv = parseFloat( RegExp.$1 ); }

} return rv; } var zfpm_IeVerValue = zfpm_getIeVer(); if ( zfpm_IeVerValue > -1 ) { if ( zfpm_IeVerValue >= 8.0 ) { IE8plus = true; } else if ( zfpm_IeVerValue >= 7.0 ) { IE7plus = true; } else if ( zfpm_IeVerValue >= 6.0 ) { IE6plus = true; } else { IE6min = true; } } // IE upgrade message // --------------------------------------------------------------------/* if (typeof zfpm_ieUpgradeMessageForIe6or7 == 'undefined') { var zfpm_ieUpgradeMessageForIe6or7 = 6; } */ var zfpm_ieUpgradeMessageDiv; if (typeof zfpm_ieUpgradeMessageForIe6or7 != 'undefined') { if (zfpm_ieUpgradeMessageForIe6or7 == 6) { var zfpm_ieUpgradeForVer = 6; } else if (zfpm_ieUpgradeMessageForIe6or7 == 7) { var zfpm_ieUpgradeForVer = 7; } else { var zfpm_ieUpgradeForVer = 6; } } else { var zfpm_ieUpgradeForVer = 6; } var zfpm_ieUpgradeMessageTextDefault = '' +'Your are currently using OUTDATED VERSION of Internet Explorer browser !<br />' +'<a title="Go to the official Microsoft Internet Explorer website" targ et="_blank" href="http://www.microsoft.com/windows/internet-explorer/default.asp x">Please upgrade now</a> to the the latest version,<br />' +'or install other browsers: <a target="_blank" href="http://www.mozilla .com/en-US/?from=sfx&uid=267862&t=450">Mozilla Firefox</a>, ' +'<a target="_blank" href="http://www.google.com/chrome/">Google Chrome< /a>, ' +'<a target="_blank" href="http://www.apple.com/safari/">Safari</a>, or ' +'<a target="_blank" href="http://www.opera.com/browser/">Opera</a>.'; +''; if (typeof zfpm_ieUpgradeMessageText != 'undefined') { if (zfpm_ieUpgradeMessageText != '') { var zfpm_ieUpgradeMessageHTML = zfpm_ieUpgradeMessageText; } else { var zfpm_ieUpgradeMessageHTML = zfpm_ieUpgradeMessageTextDefault ; } } else { var zfpm_ieUpgradeMessageHTML = zfpm_ieUpgradeMessageTextDefault; }

function zfpm_writeIeUpgradeMessage() { zfpm_ieUpgradeMessageDiv = document.createElement('div'); zfpm_ieUpgradeMessageDiv.style.cssText = 'text-align:center; padding:5px ; border:1px solid #FFCC00; background-color:#FFEECC; font-weight:bold;'; zfpm_ieUpgradeMessageDiv.innerHTML = zfpm_ieUpgradeMessageHTML; } function zfpm_showIeUpgradeMessage() { if (zfpm_ieUpgradeForVer == 6) { if ( IE6plus ) { zfpm_writeIeUpgradeMessage(); bodyElement.insertBefore(zfpm_ieUpgradeMessageDiv,bodyEl ement.firstChild); } } else if (zfpm_ieUpgradeForVer == 7) { if ( IE7plus ) { zfpm_writeIeUpgradeMessage() bodyElement.insertBefore(zfpm_ieUpgradeMessageDiv,bodyEl ement.firstChild); } } else { } } function zfpm_confirmIeUpgradeMessage() { if (typeof zfpm_ieUpgradeMessage != 'undefined') { if (zfpm_ieUpgradeMessage == 'yes') { zfpm_showIeUpgradeMessage(); } } } zfpm_confirmIeUpgradeMessage(); // css insertion // --------------------------------------------------------------------var zfpm_generalCssLink = document.createElement('link'); zfpm_generalCssLink.type = 'text/css'; zfpm_generalCssLink.rel = 'stylesheet'; zfpm_generalCssLink.media = 'screen'; zfpm_generalCssLink.href = ''+zfpm_cssFolder+'zfpmenu.css'; headElement.appendChild(zfpm_generalCssLink); function zfpm_putThemeCssLinkNode(zfpm_themeOption) { var zfpm_themeCssLink = document.createElement('link'); zfpm_themeCssLink.type = 'text/css'; zfpm_themeCssLink.rel = 'stylesheet'; zfpm_themeCssLink.media = 'screen'; zfpm_themeCssLink.href = ''+zfpm_cssFolder+'zfpmenu-'+zfpm_themeOption+' .css'; headElement.appendChild(zfpm_themeCssLink); } function zfpm_putThemeStyleNode(zfpm_themeOption) { var zfpm_styleRules = '' +'#zfpm_div { background:url("'+zfpm_imgFolder+'bg-'+zfpm_themeO ption+'.png") repeat; }' +'ul#zfpm_ul ul { background:url("'+zfpm_imgFolder+'bg-'+zfpm_th

emeOption+'.png") repeat; }' +'ul#zfpm_ul *.dir { background-image:url("'+zfpm_imgFolder+'arr ow-menu-dir-up-'+zfpm_themeOption+'.png") !important; }' +'ul#zfpm_ul ul *.dir { background-image:url("'+zfpm_imgFolder+' arrow-menu-dir-right-'+zfpm_themeOption+'.png") !important; }' +'ul#zfpm_ul *.box { background-image:url("'+zfpm_imgFolder+'arr ow-menu-box-'+zfpm_themeOption+'.png") !important; }' +'ul#zfpm_ul ul *.box { background-image:url("'+zfpm_imgFolder+' arrow-menu-box-'+zfpm_themeOption+'.png") !important; }' +'.zfpm_scrollBodyTopDiv { background-image:url("'+zfpm_imgFolde r+'arrow-scroll-top-'+zfpm_themeOption+'.png") !important; }' +'.zfpm_scrollBodyBottomDiv { background-image:url("'+zfpm_imgFo lder+'arrow-scroll-bottom-'+zfpm_themeOption+'.png") !important; }' +''; if (typeof zfpm_customBackgroundImage != 'undefined') { if (zfpm_customBackgroundImage != '') { zfpm_styleRules += '#zfpm_div, ul#zfpm_ul ul { backgroun d-image:url("'+zfpm_customBackgroundImage+'"); }'; } } if (typeof zfpm_customBackgroundColor != 'undefined') { if (zfpm_customBackgroundColor != '') { zfpm_styleRules += '#zfpm_div, ul#zfpm_ul ul { backgroun d-color:'+zfpm_customBackgroundColor+'; }'; zfpm_styleRules += '#zfpm_div, ul#zfpm_ul ul { backgroun d-image:none; }'; } } var zfpm_style = document.createElement('style'); zfpm_style.type = 'text/css'; if (!!(window.attachEvent && !window.opera)) { zfpm_style.styleSheet.cssText = zfpm_styleRules; } else { var zfpm_styleText = document.createTextNode(zfpm_styleRules); zfpm_style.appendChild(zfpm_styleText); } headElement.appendChild(zfpm_style); } zfpm_putThemeCssLinkNode(zfpm_theme); zfpm_putThemeStyleNode(zfpm_theme); // separator // --------------------------------------------------------------------var zfpm_navSpacerLi = document.createElement('li'); zfpm_navSpacerLi.id = 'zfpm_navSpacerLi'; zfpm_navSpacerLi.className = 'zfpm_trans'; zfpm_navSpacerLi.innerHTML = '&nbsp;'; zfpm_ulTag.appendChild(zfpm_navSpacerLi); // share buttons // --------------------------------------------------------------------var zfpm_shareLiTag; var zfpm_shareBoxPosition; if (typeof zfpm_shareBoxCustomWidth != 'undefined') { if (zfpm_shareBoxCustomWidth != '') { var zfpm_shareBoxWidth = zfpm_shareBoxCustomWidth;

} else { var zfpm_shareBoxWidth = '270'; } } else { var zfpm_shareBoxWidth = '270'; } var zfpm_shareLiHTML = '<ifr'+'ame id="zfpm_shareIframe" name="zfpm_shareIframe" class="zfpm_shareIframe" allowtransparency="yes" scrolling="no" src="http://www .linksalpha.com/social?link='+escape(location.href)+'" frameborder="0" height="2 0" width="'+zfpm_shareBoxWidth+'"></ifr'+'ame>'; function zfpm_removeShareLi() { if (document.getElementById('zfpm_shareLi') != null) { var zfpm_oldShareLiTag = document.getElementById('zfpm_shareLi') ; zfpm_ulTag.removeChild(zfpm_oldShareLiTag); } } function zfpm_newShareLi() { zfpm_shareLiTag = document.createElement('li'); zfpm_shareLiTag.id = 'zfpm_shareLi'; } function zfpm_putShareLi() { if (typeof zfpm_shareBoxPosition != 'undefined') { if (zfpm_shareBoxPosition == 'left') { zfpm_ulTag.insertBefore(zfpm_shareLiTag,zfpm_ulTag.first Child); } else if (zfpm_shareBoxPosition == 'right') { zfpm_ulTag.insertBefore(zfpm_shareLiTag,document.getElem entById('zfpm_infoLi')); } else { zfpm_ulTag.insertBefore(zfpm_shareLiTag,document.getElem entById('zfpm_infoLi')); } } else { zfpm_ulTag.insertBefore(zfpm_shareLiTag,document.getElementById( 'zfpm_infoLi')); } } function zfpm_toggleShareBox(zfpm_shareBoxVisibility) { zfpm_removeShareLi(); if (zfpm_shareBoxVisibility == 'show') { zfpm_newShareLi(); zfpm_putShareLi(); zfpm_shareLiTag.innerHTML = zfpm_shareLiHTML; } } function zfpm_confirmShareLi() { if (typeof zfpm_shareBox != 'undefined') { if (zfpm_shareBox == 'yes') { zfpm_toggleShareBox('show'); } } }

// scroll navigation // --------------------------------------------------------------------var zfpm_scrollBodyLi = document.createElement('li'); zfpm_scrollBodyLi.id = 'zfpm_scrollBodyLi'; zfpm_scrollBodyLi.className = 'zfpm_trans'; zfpm_ulTag.appendChild(zfpm_scrollBodyLi); var zfpm_scrollBodyBottomDiv = document.createElement('span'); zfpm_scrollBodyBottomDiv.style.display = 'none'; zfpm_scrollBodyBottomDiv.className = 'zfpm_scrollBodyBottomDiv'; zfpm_scrollBodyBottomDiv.id = 'zfpm_scrollBodyBottomDiv'; zfpm_scrollBodyBottomDiv.title = 'Go to bottom'; var zfpm_scrollBodyTopDiv = document.createElement('span'); zfpm_scrollBodyTopDiv.style.display = 'none'; zfpm_scrollBodyTopDiv.className = 'zfpm_scrollBodyTopDiv'; zfpm_scrollBodyTopDiv.id = 'zfpm_scrollBodyTopDiv'; zfpm_scrollBodyTopDiv.title = 'Go to top'; if ( IE7plus ) { zfpm_scrollBodyBottomDiv.style.display = 'inline'; zfpm_scrollBodyTopDiv.style.display = 'inline'; } var zfpm_scrollScript = document.createElement('scr'+'ipt'); zfpm_scrollScript.type = 'text/javascript'; zfpm_scrollScript.src = ''+zfpm_jsFolder+'jquery-scroll.js'; var zfpm_scrollBodyScript = document.createElement('scr'+'ipt'); zfpm_scrollBodyScript.type = 'text/javascript'; zfpm_scrollBodyScript.src = ''+zfpm_jsFolder+'jquery-scroll-body.js'; var zfpm_scrollBodyLi = document.getElementById('zfpm_scrollBodyLi'); zfpm_scrollBodyLi.appendChild(zfpm_scrollBodyBottomDiv); zfpm_scrollBodyLi.appendChild(zfpm_scrollBodyTopDiv); zfpm_scrollBodyLi.appendChild(zfpm_scrollScript); zfpm_scrollBodyLi.appendChild(zfpm_scrollBodyScript); // basic scroll functions function zfpm_DocHeight() { var doc = document; return Math.max( Math.max(doc.body.scrollHeight, doc.documentElement.scrollHeight ), Math.max(doc.body.offsetHeight, doc.documentElement.offsetHeight ), Math.max(doc.body.clientHeight, doc.documentElement.clientHeight ) ); } function zfpm_GoBottom() { window.scroll(0,zfpm_DocHeight()); } function zfpm_GoTop() { window.scroll(0,0); } // show the menu // --------------------------------------------------------------------function zfpm_showMenu() { if ( IE7plus ) { var zfpm_ulTag = document.getElementById('zfpm_ul');

zfpm_ulTag.style.styleFloat = 'left'; } if (document.getElementById('zfpm_cp').href == unescape('%68%74%74%70%3A %2F%2F%69%6E%69%6D%75%2E%63%6F%6D%2F%77%69%64%67%65%74%2F%7A%66%70%6D%65%6E%75%2 F')) { zfpm_divTag.style.display = 'block'; zfpm_divTag.style.visibility = 'visible'; } else { zfpm_divTag.innerHTML = ''; } } function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); } func(); } } } if (typeof zfpm_waitForPageLoad != 'undefined') { if (zfpm_waitForPageLoad == 'yes') { addLoadEvent(function() { zfpm_showMenu(); zfpm_confirmShareLi(); }); } else { zfpm_showMenu(); zfpm_confirmShareLi(); } } else { addLoadEvent(function() { zfpm_showMenu(); zfpm_confirmShareLi(); }); }

Vous aimerez peut-être aussi