⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newbb_dynmenu.js

📁 在综合英文版XOOPS 2.09, 2.091, 2.092 的基础上正式发布XOOPS 2.09中文版 XOOPS 2.09x 版主要是PHP5升级、bug修正和安全补正: 1 全面兼容PHP 5.
💻 JS
字号:
/*Author   : bieler batisteCompany  : doSimple : http://www.dosimple.chsend me a mail for more informations : faden@PASDEPOURRIELaltern.org - remove ( PASDEPOURRIEL )Short javascript function to create and handle a CSS navigation menuCopyright (C) 2004  Bieler BatisteThis library is free software; you can redistribute it and/ormodify it under the terms of the GNU Lesser General PublicLicense as published by the Free Software Foundation; eitherversion 2.1 of the License, or (at your option) any later version.This library is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNULesser General Public License for more details.You should have received a copy of the GNU Lesser General PublicLicense along with this library; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA*/// the timeout for the menuvar timeout = 1000;// not very clean but simple// the function can be run in the HTML for faster display// window.onload=initMenu;// creat timeout variables for list item// it's for avoid some warning with IEfor( var i = 0; i < 100; i++ ){    eval("var timeoutli" + i + " = false;");}// this fonction apply the CSS style and the eventfunction initMenu(){    // a test to avoid some browser like IE4, Opera 6, and IE Mac    if ( browser.isDOM1     && !( browser.isMac && browser.isIE )     && !( browser.isOpera && browser.versionMajor < 7 )    && !( browser.isIE && browser.versionMajor < 5 ) )    {        // get some element        var menu = document.getElementById('menu'); // the root element        var lis = menu.getElementsByTagName('li'); // all the li                // change the class name of the menu,         // it's usefull for compatibility with old browser        menu.className='menu';                // i am searching for ul element in li element        for ( var i=0; i<lis.length; i++ )        {            // is there a ul element ?            if ( lis.item(i).getElementsByTagName('ul').length > 0 )            {                        // improve IE key navigation                if ( browser.isIE )                {                    addAnEvent(lis.item(i),'keyup',show);                }                // link events to list item                addAnEvent(lis.item(i),'mouseover',show);                addAnEvent(lis.item(i),'mouseout',timeoutHide);                addAnEvent(lis.item(i),'blur',timeoutHide);                addAnEvent(lis.item(i),'focus',show);                                // add an id to list item                lis.item(i).setAttribute( 'id', "li"+i );                lis.item(i).getElementsByTagName('a')[0].className = 'menuIndicateur';            }        }    }}function addAnEvent( target, eventName, functionName ){    // apply the method to IE    if ( browser.isIE )    {        //attachEvent dont work properly with this        eval('target.on'+eventName+'=functionName');    }    // apply the method to DOM compliant browsers    else    {        target.addEventListener( eventName , functionName , true ); // true is important for Opera7    }}    // hide the first ul element of the current elementfunction timeoutHide(){    // start the timeout    eval( "timeout" + this.id + " = window.setTimeout('hideUlUnder( \"" + this.id + "\" )', " + timeout + " );");}// hide the ul elements under the element identified by idfunction hideUlUnder( id ){       document.getElementById(id).getElementsByTagName('ul')[0].style['visibility'] = 'hidden';}// show the first ul element found under this elementfunction show(){    // show the sub menu    this.getElementsByTagName('ul')[0].style['visibility'] = 'visible';    // clear the timeout    eval ( "clearTimeout( timeout"+ this.id +");" );    hideAllOthersUls( this );}// hide all ul on the same level of  this list itemfunction hideAllOthersUls( currentLi ){    var ul = currentLi.parentNode;    //alert(lis.childNodes.length);    for ( var i=0; i<ul.childNodes.length; i++ )    {        if ( ul.childNodes[i].id && ul.childNodes[i].id != currentLi.id )        {            hideUlUnderLi( ul.childNodes[i] );        }    }}// hide all the ul wich are in the li elementfunction hideUlUnderLi( li ){    var uls = li.getElementsByTagName('ul');    for ( var i=0; i<uls.length; i++ )    {        uls.item(i).style['visibility'] = 'hidden';    }} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -