亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dommenu.js

?? 免費的java企業級論壇可執行程序
?? JS
?? 第 1 頁 / 共 3 頁
字號:
/** $Id: domMenu.js,v 1.1 2006/12/26 08:24:23 linhdh Exp $ */
// {{{ license

/*
 * Copyright 2002-2005 Dan Allen, Mojavelinux.com (dan.allen@mojavelinux.com)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// }}}
// {{{ intro

/**
 * Title: DOM Menu Library
 * Version: 0.3.7
 *
 * Summary:
 * A widget library for creating dynamic "popout" menus on webpages.  The menu can
 * either be horizontal or vertical, and can open in either direction.  It has
 * both edge detection and obstruction detection (for browsers that cannot
 * hide select boxes or flash animations).  The styles for the menu items are
 * controlled entirely through CSS. The menus are created and destroyed using
 * the DOM.  Menu configuration is done using a custom Hash() class.
 *
 * Dependency: domLib.js version 0.72
 *
 * Maintainer: Dan Allen <dan@mojavelinux.com>
 * Contributors:
 * 		Jason Rust <jrust@rustyparts.com>
 *
 * License: Apache 2.0
 * However, if you use this library, you earn the position of official bug
 * reporter :) Please post questions or problem reports to the newsgroup:
 *
 *   http://groups.google.com/group/dom-menu
 *
 * If you are doing this for commercial work, perhaps you could send me a few
 * Starbucks Coffee gift dollars or PayPal bucks to encourage future
 * developement (NOT REQUIRED).  E-mail me for my snail mail address.
 *
 * Homepage: http://www.mojavelinux.com/projects/dommenu/
 *
 * Freshmeat Project: http://freshmeat.net/projects/dommenu/?topic_id=92
 *
 * Updated: $Date: 2006/12/26 08:24:23 $
 *
 * Supported Browsers:
 * Mozilla (Gecko), IE 5.0+, IE on Mac, Safari, Konqueror, Opera 7+
 *
 * If there is a non-negative click open delay, then any uri of the element will be ignored
 *
 * The alternate contents for a hover element are treated by creating to <span> wrapper elements
 * and then alternating the display of them.  This avoids the need for innerHTML, which can
 * do nasty things to the browsers.  If <span> turns out to be a bad choice for tags, then a
 * non-HTML element can be used instead.
 *
 * Dev Notes:
 * - added cellSpacing = 0 for domLib_isMacIE (two places)
 * - seems that Safari and Firefox share an offset problem of menu under parent (pmp example)
 * - must use createTextNode() to add the "\n" that is required for Mac to
 *   render the appendChild element (two places); this might be the solution for
 *   the sub menus as well
 * - Safari seems to have a problem with offsetTop if a descendent of body has a margin; solution
 *   is to use padding on the body
 */

// }}}
// {{{ settings (editable)

var domMenu_data = new Hash();
var domMenu_settings = new Hash();

domMenu_settings.set('global', new Hash(
	'menuBarClass', 'domMenu_menuBar',
	'menuElementClass', 'domMenu_menuElement',
	'menuElementHoverClass', 'domMenu_menuElementHover',
	'menuElementActiveClass', 'domMenu_menuElementHover',
	'subMenuBarClass', 'domMenu_subMenuBar',
	'subMenuElementClass', 'domMenu_subMenuElement',
	'subMenuElementHoverClass', 'domMenu_subMenuElementHover',
	'subMenuElementActiveClass', 'domMenu_subMenuElementHover',
	'subMenuElementHeadingClass', 'domMenu_subMenuElementHeading',
	'subMenuTargetFrame', false,
	'targetDocumentXOrigin', 0,
	'targetDocumentYOrigin', 0,
	'menuBarWidth', '100%',
	'subMenuMinWidth', 'inherit',
	'distributeSpace', true,
	'axis', 'horizontal',
	'verticalExpand', 'south',
	'horizontalExpand', 'east',
	'expandMenuArrowUrl', 'arrow.gif',
	'subMenuWidthCorrection', 0,
	'verticalSubMenuOffsetY', 0,
	'verticalSubMenuOffsetX', 0,
	'horizontalSubMenuOffsetX', 0,
	'horizontalSubMenuOffsetY', 0,
	'screenPadding', 0,
	'openMouseoverMenuDelay', 300,
	'openMousedownMenuDelay', -1,
	'closeMouseoutMenuDelay', 800,
	'closeClickMenuDelay', -1,
	'openMouseoverSubMenuDelay', 300,
	'openClickSubMenuDelay', -1,
	'closeMouseoutSubMenuDelay', 300,
	'closeClickSubMenuDelay', -1,
	'baseZIndex', 100,
	'baseUri', ''
));

// }}}
// {{{ globals (DO NOT EDIT)

/**
 * The data for the menu is stored here, loaded from an external file
 * @hash domMenu_data
 */
var domMenu_data;

var domMenu_selectElements;
var domMenu_scrollbarWidth = 14;
var domMenu_eventTo = domLib_isIE ? 'toElement' : 'relatedTarget';
var domMenu_eventFrom = domLib_isIE ? 'fromElement' : 'relatedTarget';

var domMenu_activeElement = new Hash();

/**
 * Array of hashes listing the timouts currently running for opening/closing menus
 * @array domMenu_timeouts
 */
var domMenu_timeouts = [];
domMenu_timeouts['open'] = new Hash();
domMenu_timeouts['close'] = new Hash();

/**
 * Style to use for a link pointer, which is different between Gecko and IE
 * @var domMenu_pointerStyle
 */
var domMenu_pointerStyle = domLib_isIE ? 'hand' : 'pointer';

// }}}
// {{{ domMenu_activate()

function domMenu_activate(in_containerId, in_disableWarning)
{
	var container;
	var data;

	// make sure we can use the menu system
	if (!domLib_useLibrary)
	{
		if (!in_disableWarning)
		{
				alert('domMenu: Browser not supported.  Menu will be disabled.');
		}

		return;
	}

	// make sure that this is a valid menu, 
	// and that the menu actually has data
	if (!(container = document.getElementById(in_containerId)) || 
		!(data = domMenu_data.get(in_containerId)) ||
		data.numericLength == 0) {
		if (!in_disableWarning) {
				alert('domMenu: Menu failed to load.');
		}

		return;
	}

	if (domLib_isIE && window.attachEvent) {
		window.attachEvent('onunload', domMenu_unloadEventCache);
	}

	// start with the global settings and merge in the local changes
	if (!domMenu_settings.has(in_containerId)) {
		domMenu_settings.set(in_containerId, new Hash());
	}

	var settings = domMenu_settings.get(in_containerId);
	for (var i in domMenu_settings.get('global').elementData) {
		if (!settings.has(i)) {
			settings.set(i, domMenu_settings.get('global').get(i));
		}
	}

	// populate the zero level element
	container.data = new Hash(
		'parentElement', false,
		'numChildren', data.numericLength,
		'childElements', new Hash(),
		'level', 0,
		'index', 1
	);
	
	// if we choose to distribute either height or width, determine ratio of each cell
	var distributeRatio = Math.round(100/container.data.get('numChildren')) + '%';
	
	// the first menu is the rootMenu, which is a child of the zero level element
	var rootMenu = document.createElement('div');
	rootMenu.id = in_containerId + '-0';
	rootMenu.className = settings.get('menuBarClass');
	container.data.set('subMenu', rootMenu);

	var rootMenuTable = rootMenu.appendChild(document.createElement('table'));
	if (domLib_isKonq || domLib_isMacIE) {
		rootMenuTable.cellSpacing = 0;
	}

	rootMenuTable.style.border = 0;
	rootMenuTable.style.borderCollapse = 'collapse';
	rootMenuTable.style.width = settings.get('menuBarWidth');
	var rootMenuTableBody = rootMenuTable.appendChild(document.createElement('tbody'));

	var numSiblings = container.data.get('numChildren');
	for (var index = 1; index <= numSiblings; index++) {
		// create a row the first time if horizontal or each time if vertical
		if (index == 1 || settings.get('axis') == 'vertical') {
			var rootMenuTableRow = rootMenuTableBody.appendChild(document.createElement('tr'));
		}

		// create an instance of the root level menu element
		var rootMenuTableCell = rootMenuTableRow.appendChild(document.createElement('td'));
		rootMenuTableCell.style.padding = 0;
		rootMenuTableCell.id = in_containerId + '-' + index;
		// add element to list of parent children
		container.data.get('childElements').set(rootMenuTableCell.id, rootMenuTableCell);

		// assign the settings to the root level element
		// NOTE: this is a problem if two menus are using the same data
		rootMenuTableCell.data = data.get(index);
		rootMenuTableCell.data.merge(new Hash(
			'basename', in_containerId,
			'parentElement', container,
			'numChildren', rootMenuTableCell.data.numericLength,
			'childElements', new Hash(),
			'offsets', new Hash(),
			'level', container.data.get('level') + 1,
			'index', index
		));

		// assign the styles
		rootMenuTableCell.style.cursor = 'default';
		if (settings.get('axis') == 'horizontal') {
			if (settings.get('distributeSpace')) {
				rootMenuTableCell.style.width = distributeRatio;
			}
		}

		// Needed for when the text wraps
		rootMenuTableCell.style.verticalAlign = 'top';

		var rootElement = rootMenuTableCell.appendChild(document.createElement('div'));
		rootElement.className = settings.get('menuElementClass');
		// fill in the menu element contents
		var spanElement = rootElement.appendChild(document.createElement('span'));
		// can't use createTextNode() because there might be img tags in the contents
		spanElement.innerHTML = rootMenuTableCell.data.get('contents').replace(/\/\/\//, settings.get('baseUri'));
		// add hover contents if needed
		if (rootMenuTableCell.data.has('contentsHover')) {
			spanElement = rootElement.appendChild(document.createElement('span'));
			spanElement.style.display = 'none';
			spanElement.innerHTML = rootMenuTableCell.data.get('contentsHover').replace(/\/\/\//, settings.get('baseUri'));
		}

		// MacIE has to have a newline at the end or else it barfs
		// additionally, it MUST be added using createTextNode() or IE will crash!
		if (domLib_isMacIE) {
			rootMenuTableCell.appendChild(document.createTextNode("\n"));
		}

		// attach the events
		rootMenuTableCell.onmouseover = domMenu_openMenuOnmouseoverHandler;
		rootMenuTableCell.onmouseout = domMenu_closeMenuHandler;

		if (settings.get('openMousedownMenuDelay') >= 0 && rootMenuTableCell.data.get('numChildren')) {
			rootMenuTableCell.onmousedown = domMenu_openMenuOnmousedownHandler;
			// cancel mouseup so that it doesn't propogate to global mouseup event
			rootMenuTableCell.onmouseup = domLib_cancelBubble;
			if (domLib_isIE) {
				rootMenuTableCell.ondblclick = domMenu_openMenuOnmousedownHandler;
			}
		}
		else if (rootMenuTableCell.data.get('uri')) {
			rootMenuTableCell.style.cursor = domMenu_pointerStyle;
			rootMenuTableCell.onclick = domMenu_resolveLinkHandler;
		}

		// prevent highlighting of text
		if (domLib_isIE) {
			rootMenuTableCell.onselectstart = makeFalse; 
		}

		rootMenuTableCell.oncontextmenu = makeFalse; 
	}
	
	// add the menu rootMenu to the zero level element
	rootMenu = container.appendChild(rootMenu);

	if (domLib_detectObstructionsEnabled) {
		// even though most cases the top level menu does not go away, it could
		// if this menu system is used by another process
		domLib_detectObstructions(rootMenu, false, false);
	}
}

// }}}
// {{{ domMenu_activateSubMenu()

function domMenu_activateSubMenu(in_parentElement)
{
	// NOTE: submenus not supported in MacIE because of problems using
	// appendChild on document.body
	if (domLib_isMacIE) {
		return;
	}

	// see if submenu already exists
	if (in_parentElement.data.has('subMenu')) {
		domMenu_toggleSubMenu(in_parentElement, 'visible');
		return;
	}

	var settings = domMenu_settings.get(in_parentElement.data.get('basename'));

	var targetDoc = document;
	var targetFrame = settings.get('subMenuTargetFrame');
	if (targetFrame) {
		targetDoc = targetFrame.document;
	}

	// build the submenu
	var menu = targetDoc.createElement('div');
	menu.id = in_parentElement.id + '-0';
	menu.className = settings.get('subMenuBarClass');
	menu.style.zIndex = settings.get('baseZIndex');
	menu.style.position = 'absolute';
	// position the menu in the upper left corner hidden so that we can work on it
	menu.style.visibility = 'hidden';
	menu.style.top = 0;
	menu.style.left = 0;

	in_parentElement.data.set('subMenu', menu);

	var menuTable = menu.appendChild(targetDoc.createElement('table'));
	// ** opera wants to make absolute tables width 100% **
	if (domLib_isOpera) {
		menuTable.style.width = '1px';
		menuTable.style.whiteSpace = 'nowrap';
	}

	if (domLib_isKonq || domLib_isMacIE) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区电影| av激情亚洲男人天堂| 亚洲精品国产一区二区精华液| 日韩欧美激情一区| 91精品国产综合久久久久久久久久| 欧洲精品视频在线观看| 91香蕉视频在线| 色老汉av一区二区三区| 91性感美女视频| 欧美性猛交xxxxxxxx| 欧美日韩国产首页| 欧美一区二区视频在线观看2022| 91精品国产91久久久久久最新毛片| 欧美日韩精品福利| 精品国免费一区二区三区| 久久久久免费观看| 国产精品短视频| 亚洲一区二区三区四区在线免费观看 | 成人美女视频在线观看18| 国产剧情一区二区| 91一区二区三区在线播放| 欧美午夜精品电影| 欧美精品一区二区三区高清aⅴ| 精品国产髙清在线看国产毛片| 国产亚洲欧美在线| 亚洲精品欧美综合四区| 视频一区二区三区中文字幕| 国产一区二区三区在线观看免费| 国产不卡高清在线观看视频| 色av一区二区| 欧美精品一区二区三区蜜桃视频| 国产精品久久久久永久免费观看| 一区二区三区美女视频| 久久99国产精品免费| 高清成人免费视频| 欧美酷刑日本凌虐凌虐| 国产日韩av一区| 午夜欧美一区二区三区在线播放| 韩国毛片一区二区三区| 97se亚洲国产综合在线| 日韩视频免费直播| 亚洲人成伊人成综合网小说| 美女爽到高潮91| 色偷偷一区二区三区| 欧美va在线播放| 亚洲综合图片区| 国产成人免费视频一区| 欧美顶级少妇做爰| 亚洲精品大片www| av不卡在线观看| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 洋洋av久久久久久久一区| 国产一区欧美日韩| 欧美伦理影视网| 日韩久久一区二区| 国产成人av电影在线| 精品理论电影在线| 日韩精品一二三区| 欧美伊人久久久久久久久影院| 亚洲国产精品t66y| 国产原创一区二区| 日韩女同互慰一区二区| 亚洲韩国一区二区三区| 色婷婷综合久久久| 亚洲人成亚洲人成在线观看图片| 国产精品一二三区在线| 精品国产三级电影在线观看| 奇米777欧美一区二区| 欧美日韩一区在线| 午夜在线电影亚洲一区| 在线看日韩精品电影| 中文字幕一区二区三区av| 丰满岳乱妇一区二区三区| 久久精品日产第一区二区三区高清版| 蜜桃视频在线一区| 精品久久久久久久人人人人传媒| 日本女优在线视频一区二区| 欧美日韩1234| 日本强好片久久久久久aaa| 在线综合+亚洲+欧美中文字幕| 亚洲sss视频在线视频| 亚洲欧美在线aaa| 91网上在线视频| 亚洲激情网站免费观看| 欧美色精品在线视频| 亚洲国产成人av网| 欧美一个色资源| 久久99久久久久| 国产女同互慰高潮91漫画| 成人午夜视频在线观看| 亚洲免费大片在线观看| 欧美日韩高清一区二区三区| 午夜视黄欧洲亚洲| 精品日韩在线一区| av资源网一区| 亚洲高清视频的网址| 日韩免费视频线观看| 国产不卡在线播放| 亚洲丝袜美腿综合| 欧美精选午夜久久久乱码6080| 午夜精品在线视频一区| 久久亚洲精华国产精华液 | 欧美国产禁国产网站cc| 99re成人在线| 青椒成人免费视频| 久久久91精品国产一区二区三区| 99精品黄色片免费大全| 午夜精品久久久久久久 | 成人avav在线| 伊人性伊人情综合网| 日韩一卡二卡三卡四卡| 不卡视频在线观看| 青青草原综合久久大伊人精品优势| 精品国产一区a| 欧美自拍偷拍一区| 国产在线精品不卡| 亚洲成人先锋电影| 亚洲国产精品成人综合色在线婷婷 | 97久久精品人人做人人爽| 奇米影视在线99精品| 国产精品国产a级| 91精品国产综合久久蜜臀| 色综合亚洲欧洲| 国产一区二三区| 午夜精品久久久久久久久久| 国产精品午夜久久| 日韩一级免费一区| 99精品黄色片免费大全| 国产一级精品在线| 青青草成人在线观看| 亚洲午夜精品在线| 国产精品久久久久精k8| 2024国产精品| 欧美一区二区播放| 欧美日韩成人一区二区| 一本色道久久加勒比精品| 国产一区 二区| 久久99国产乱子伦精品免费| 视频一区视频二区中文字幕| 亚洲精品免费在线观看| 日韩毛片高清在线播放| 国产精品视频免费| 久久久蜜桃精品| 久久久www免费人成精品| 日韩精品中文字幕一区| 91精品国产美女浴室洗澡无遮挡| 欧亚洲嫩模精品一区三区| av在线不卡观看免费观看| 丁香啪啪综合成人亚洲小说| 国产剧情一区二区| 国产精品1024| 大白屁股一区二区视频| 成人aa视频在线观看| 岛国av在线一区| 菠萝蜜视频在线观看一区| 懂色av噜噜一区二区三区av | 久久精品视频一区二区| 久久久噜噜噜久久中文字幕色伊伊| 精品国产乱码91久久久久久网站| 欧美电影免费观看高清完整版在线 | 日韩欧美国产午夜精品| 欧美成人艳星乳罩| 久久久久久久网| 欧美国产欧美综合| 国产精品美女久久久久久久久久久 | 久久女同精品一区二区| 国产日韩欧美一区二区三区乱码 | 老汉av免费一区二区三区| 久久99国产乱子伦精品免费| 国产精品综合网| 成人精品一区二区三区四区| 不卡av电影在线播放| 欧洲国内综合视频| 日韩一级黄色大片| 国产欧美精品区一区二区三区| 中文字幕在线不卡一区二区三区| 一区二区三区**美女毛片| 天天av天天翘天天综合网| 久久精品国产精品青草| 成人黄色av网站在线| 日本高清不卡视频| 日韩视频免费直播| 中文字幕+乱码+中文字幕一区| 亚洲精品国产一区二区三区四区在线 | 成人午夜激情视频| 欧美色欧美亚洲另类二区| 亚洲精品一区二区三区四区高清 | 国内精品国产三级国产a久久| 成人白浆超碰人人人人| 欧美色中文字幕| 久久久久国产成人精品亚洲午夜 | 欧美成人精品1314www| 久久精品视频免费观看| 亚洲不卡av一区二区三区| 国产剧情av麻豆香蕉精品| 欧美日韩综合在线| 国产精品高潮呻吟久久| 久久精品久久99精品久久| 91麻豆国产在线观看| 精品999在线播放|