柯乐义高级菜单是使用jquery实现的弹出层菜单,可以有三级菜单项。效果网址:http://www.keleyi.com/keleyi/phtml/supermenu/
或者将下面代码保存到html文件,打开查看效果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>柯乐义高级弹出菜单(可以有三级菜单)</title>
<script type="text/javascript" src="http://www.keleyi.com/keleyi/pmedia/jquery-1.8.3.min.js"></script>
<link type="text/css" href="http://www.keleyi.com/keleyi/phtml/supermenu/keleyimenu.css" rel="Stylesheet" />
</head>
<body>
<div>柯乐义<br /><br /><br /><br /><br /><br /><br /><br /> </div><div >柯乐义高级弹出菜单</div>
<div id="menuframe" >
<div id="fathermenu" >
<div id="menuitem1" >
<a href="http://www.keleyi.com/menu/net/" target="_blank">一级菜单一</a>
</div>
<div id="menuitem2" >
<a href="http://www.keleyi.com/menu/jquery/" target="_blank">一级菜单二</a>
</div>
<div id="menuitem3" >
<a href="http://www.keleyi.com/menu/csharp/" target="_blank">一级菜单三</a>
</div>
</div>
<div id="submenuitem1" >
<div ><div ><a href="http://www.keleyi.com/menu/csharp/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://www.keleyi.com/menu/csharp/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://www.keleyi.com/menu/csharp/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://www.keleyi.com/menu/csharp/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/other/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://www.keleyi.com/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://www.keleyi.com/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
<div ><div ><a href="http://keleyi.com/" target="_blank">二级菜单一组</a></div><div ><ul><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li><li><a href="http://www.keleyi.com/menu/net/" target="_blank">三级菜单</a></li></ul></div>
<div ></div>
</div>
</div>
<div id="submenuitem2" >
<div ><div >
Node.js是一个基于Google Chrome浏览器v8 javascript执行引擎的异步I/O事件驱动的运行平台。直从2009年诞生开始,已经在业界得到了很多的关注,在这里也必要多说,如果你还不清楚的,请移步到Node官网。
在这里我们要讲的是用Node.js来构建本地Build。构建本地Build,我们已经有很多选择,如Ant,Maven,Gradle等。为什么我们还需要Node.js?对于我们的开发中会有一些小的基本自动化构建,如文件的监控(Less编译),javascript的压缩,不稳定集成服务代理,快速的集成反馈,文件的迁移…而对于项目来说我并不像引入太多的技术债, Node.js所使用的javascript是做web项目开发的一门必备技能,javascript作为一门比较容易入门语言,直从第一次接触Node.js,我爱不释手,由于我对Javascript基础,能够快速使用它,并不需要付出更多的学习成本,而且我感觉在服务端和客户端用同一种语言,在能一定代码重用妙不可言。而且Node.js提供了内置的web服务器,简单的文件监听,事件机制等也为做本地Build提供了很好的条件。
1:文件监听
2
3 var exec = require('child_process').exec
4
5 var underscore = require("underscore");
6
7 var configs = [
8
9 {file:/.*\.less/g, command:" dotless.Compiler.exe style.less style.css"}
10
11 ];
12
13 var source = "E:\\Project\\xxx\\style";
14
15
16
17 String.format = function () {
18
19 var s = arguments[0];
20
21 for (var i = 0; i < arguments.length - 1; i++) {
22
23 var reg = new RegExp("\\{" + i + "\\}", "gm");
24
25 s = s.replace(reg, arguments[i + 1]);
26
27 }
28
29
30
31 return s;
32
33 };
34
35
36
37 (function (fs, exec, underscore) {
38
39 var readFiles = function (dir, done) {
40
41 var results = [];
42
43 fs.readdir(dir, function (err, list) {
44
45 if (err) return done(err);
46
47 var pending = list.length;
48
49 if (!pending) return done(null, results);
50
51 list.forEach(function (file) {
52
53 file = dir + '/' + file;
54
55 fs.stat(file, function (err, stat) {
56
57 if (stat && stat.isDirectory()) {
58
59 readFiles(file, function (err, res) {
60
61 results = results.concat(res);
62
63 if (!--pending) done(null, results);
64
65 });
66
67 } else {
68
69 results.push(file);
70
71 if (!--pending) done(null, results);
72
73 }
74
75 });
76
77 });
78
79 });
80
81 };
82
83 var start = function (source, configs) {
84
85 var watch = function (error, list) {
86
87 configs.forEach(function
1.js的作用域是由函数划分的,而不是块儿
var too="test";
if(true)
{
//这是在块中的定义,此时还是全局变量
var too="new test";
}
alert(too=="new test"); //return true;
function test()
{
var too="old test"; //这是在函数中的定义,此时是局部变量
}
test();
alert(too=="new test"); //return true;too并没有改变
2.所有属于全局作用域的变量都是window对象的属性
上面例子中第一行的too就相当于window.too
看下面的例子
function test()
{
too="test";
}
test();
alert(window.too="test");
是不是很奇怪,上面例子中函数中的too是局部变量,在这里就是全局变量了
注意下两个例子的区别,一个通过显示声明 var too
一个隐示声明too="test";
也就是说没有显示定义的变量,它就是全局变量,虽然它可能只能在这个函数内使用。
作用域(scope)是JavaScript语言的基石之一,在构建复杂程序时也可能是最令人头痛的东西,只有真正的理解它,才能在实际的应用中游刃有余。