我測試this fiddle通過@Ilan Biala的jsfiddle代碼工作,但在演示頁面的時候是不是
書面使用jQuery的1.9.0,onDomReady和標準化CSS,你可以它增加了一個子菜單中的菜單請參閱jsfiddle。 比如html的是:
<nav>
<ul>
<li><a href="#" >Sec1</a></li>
<li><a href="#" >Sec2</a></li>
<li><a href="#" class="current">Sec3</a></li>
<li><a href="contacto.html" >Sec4</a></li>
<ul class="menu">
<li><a href="#" class="documents" data-icon="">Documents</a></li>
<br>
<li><a href="#" class="messages" data-icon="">Messages</a></li>
<br>
<li><a href="#" class="signout" data-icon="">Sign Out</a></li>
</ul>
</ul>
</nav>
結果是:
但有一個問題,我加入了代碼到一個server I have access,並添加行:
<link rel="stylesheet" type="text/css" href="css/menu.css" />
<script type="text/javascript" src="js/jquery-1.9.0.min.js"></script>
<script type="text/javascript" src="js/menu.js"></script>
模仿jsfiddle中的那些。該html是:
<!doctype html>
<head>
<title>Example</title>
<link rel="stylesheet" type="text/css" href="css/menu.css" />
<script type="text/javascript" src="js/jquery-1.9.0.min.js"></script>
<script type="text/javascript" src="js/menu.js"></script>
</head>
<body>
<nav>
<ul>
<li><a href="#" >Sec1</a></li>
<li><a href="#" >Sec2</a></li>
<li><a href="#" class="current">Sec3</a></li>
<li><a href="contacto.html" >Sec4</a></li>
<ul class="menu">
<li><a href="#" class="documents" data-icon="">Documents</a></li>
<br>
<li><a href="#" class="messages" data-icon="">Messages</a></li>
<br>
<li><a href="#" class="signout" data-icon="">Sign Out</a></li>
</ul>
</ul>
</nav>
</body>
</html>
所以,你可以看到子菜單不工作,可能會導致毛刺?
我懷疑不同的問題:
也許這包代碼,以便它會在onDomReady窗口事件運行,如果是的話我如何指示onDomReady財產上的代碼:
$(document).ready(function(){ //將所有JS代碼添加到menu.js中 });
標準化的CSS,但畢竟是suposed使復位....
即使世界是jQuery的1.9.0的問題,也許是爲了使用的JS都放在...
您怎麼看?
使用jQuery的
.ready()
API和包裝所有的代碼對任何DOM操作所以,如果我知道我應該把 ''在HTML,或在menu.js我做 '$(document).ready(function(){ // menu.js functions })' 哪個選項? – cMinor打開menu.js,並在開始$(document).ready(function(){和文件末尾}處寫入文件頂部); –