167 lines
No EOL
7.2 KiB
HTML
167 lines
No EOL
7.2 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
|
|
"http://www.w3.org/TR/html4/strict.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
|
<title>Example: Multi-tiered Menu From JavaScript (YUI Library)</title>
|
|
|
|
<!-- Standard reset and fonts -->
|
|
|
|
<link rel="stylesheet" type="text/css" href="../../build/reset/reset.css">
|
|
<link rel="stylesheet" type="text/css" href="../../build/fonts/fonts.css">
|
|
|
|
|
|
|
|
<!-- CSS for Menu -->
|
|
|
|
<link rel="stylesheet" type="text/css" href="../../build/menu/assets/menu.css">
|
|
|
|
|
|
<!-- Page-specific styles -->
|
|
|
|
<style type="text/css">
|
|
|
|
h1 { font-weight:bold; }
|
|
|
|
p#clicknote {
|
|
|
|
margin-top:1em;
|
|
|
|
}
|
|
|
|
p#clicknote em {
|
|
|
|
font-weight:bold;
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
<!-- Namespace source file -->
|
|
|
|
<script type="text/javascript" src="../../build/yahoo/yahoo.js"></script>
|
|
|
|
<!-- Dependency source files -->
|
|
|
|
<script type="text/javascript" src="../../build/event/event.js"></script>
|
|
<script type="text/javascript" src="../../build/dom/dom.js"></script>
|
|
|
|
|
|
<!-- Container source file -->
|
|
<script type="text/javascript" src="../../build/container/container_core.js"></script>
|
|
|
|
<!-- Menu source file -->
|
|
<script type="text/javascript" src="../../build/menu/menu.js"></script>
|
|
|
|
<!-- Page-specific script -->
|
|
|
|
<script type="text/javascript">
|
|
|
|
YAHOO.example.onWindowLoad = function(p_oEvent) {
|
|
|
|
var aItems = [
|
|
|
|
{ text: "communications", submenu: { id: "communications", itemdata: [
|
|
|
|
{ text: "360", url: "http://360.yahoo.com" },
|
|
{ text: "Alerts", url: "http://alerts.yahoo.com" },
|
|
{ text: "Avatars", url: "http://avatars.yahoo.com" },
|
|
{ text: "Groups", url: "http://groups.yahoo.com " },
|
|
{ text: "Internet Access", url: "http://promo.yahoo.com/broadband" },
|
|
{ text: "PIM", submenu: { id: "pim", itemdata: [
|
|
|
|
{ text: "Yahoo! Mail", url:"http://mail.yahoo.com" },
|
|
{ text: "Yahoo! Address Book", url:"http://addressbook.yahoo.com" },
|
|
{ text: "Yahoo! Calendar", url:"http://calendar.yahoo.com" },
|
|
{ text: "Yahoo! Notepad", url:"http://notepad.yahoo.com" }
|
|
|
|
] }
|
|
|
|
},
|
|
{ text: "Member Directory", url: "http://members.yahoo.com" },
|
|
{ text: "Messenger", url: "http://messenger.yahoo.com" },
|
|
{ text: "Mobile", url: "http://mobile.yahoo.com" },
|
|
{ text: "Photos", url: "http://photos.yahoo.com" },
|
|
|
|
] } },
|
|
|
|
{ text: "shopping", submenu: { id: "shopping", itemdata: [
|
|
|
|
{ text: "Auctions", url: "http://auctions.shopping.yahoo.com" },
|
|
{ text: "Autos", url: "http://autos.yahoo.com" },
|
|
{ text: "Classifieds", url: "http://classifieds.yahoo.com" },
|
|
{ text: "Flowers & Gifts", url: "http://shopping.yahoo.com/b:Flowers%20%26%20Gifts:20146735" },
|
|
{ text: "Points", url: "http://points.yahoo.com" },
|
|
{ text: "Real Estate", url: "http://realestate.yahoo.com" },
|
|
{ text: "Travel", url: "http://travel.yahoo.com" },
|
|
{ text: "Wallet", url: "http://wallet.yahoo.com" },
|
|
{ text: "Yellow Pages", url: "http://yp.yahoo.com" }
|
|
|
|
] } },
|
|
|
|
{ text: "entertainment", submenu: { id: "entertainment", itemdata: [
|
|
|
|
{ text: "Fantasy Sports", url: "http://fantasysports.yahoo.com" },
|
|
{ text: "Games", url: "http://games.yahoo.com" },
|
|
{ text: "Kids", url: "http://www.yahooligans.com" },
|
|
{ text: "Music", url: "http://music.yahoo.com" },
|
|
{ text: "Movies", url: "http://movies.yahoo.com" },
|
|
{ text: "Radio", url: "http://music.yahoo.com/launchcast" },
|
|
{ text: "Travel", url: "http://travel.yahoo.com" },
|
|
{ text: "TV", url: "http://tv.yahoo.com" }
|
|
|
|
] } },
|
|
|
|
{ text: "information", submenu: { id: "information", itemdata: [
|
|
|
|
{ text: "Downloads", url: "http://downloads.yahoo.com" },
|
|
{ text: "Finance", url: "http://finance.yahoo.com" },
|
|
{ text: "Health", url: "http://health.yahoo.com" },
|
|
{ text: "Local", url: "http://local.yahoo.com" },
|
|
{ text: "Maps & Directions", url: "http://maps.yahoo.com" },
|
|
{ text: "My Yahoo!", url: "http://my.yahoo.com" },
|
|
{ text: "News", url: "http://news.yahoo.com" },
|
|
{ text: "Search", url: "http://search.yahoo.com" },
|
|
{ text: "Small Business", url: "http://smallbusiness.yahoo.com" },
|
|
{ text: "Weather", url: "http://weather.yahoo.com" }
|
|
|
|
] } }
|
|
|
|
];
|
|
|
|
var oProductsServicesMenu = new YAHOO.widget.Menu("productsandservices", { fixedcenter: true });
|
|
|
|
oProductsServicesMenu.addItems(aItems);
|
|
|
|
oProductsServicesMenu.render(document.body);
|
|
|
|
oProductsServicesMenu.show();
|
|
|
|
|
|
function onMenuToggleMouseDown(p_oEvent) {
|
|
|
|
YAHOO.util.Event.stopPropagation(p_oEvent);
|
|
|
|
oProductsServicesMenu.show();
|
|
|
|
}
|
|
|
|
YAHOO.util.Event.addListener("menutoggle", "mousedown", onMenuToggleMouseDown);
|
|
|
|
}
|
|
|
|
|
|
YAHOO.util.Event.addListener(window, "load", YAHOO.example.onWindowLoad);
|
|
|
|
</script>
|
|
|
|
</head>
|
|
<body>
|
|
|
|
<h1>Example: Multi-tiered Menu From JavaScript (YUI Library) <em>[<a href="index.html">Examples Home</a>]</em></h1>
|
|
<p>This example demonstrates how to create a multi-tiered menu using nothing but JavaScript. The Menu API also supports building a menu like this <a href="example07.html">using existing markup</a>.</p>
|
|
<p id="clicknote"><em>Note:</em> By default clicking outside of a menu will hide it. Additionally, menu items without a submenu or a URL to navigate will hide their parent menu when clicked. Click the "Show Menu" button below to make the menu visible if it is hidden.</p>
|
|
<button id="menutoggle">Show Menu</button>
|
|
|
|
</body>
|
|
</html> |