javascript - jsfiddle 代码工作但在演示页面中时不工作

标签 javascript html css jsfiddle

我正在测试 this fiddle@Ilan Biala 撰写

它使用 jquery 1.9.0onDomReadyNormalized 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="&#xe000">Documents</a></li>
            <br>
            <li><a href="#" class="messages" data-icon="&#xe001">Messages</a></li>
            <br>
            <li><a href="#" class="signout" data-icon="&#xe002">Sign Out</a></li>
        </ul>
    </ul>
</nav>

结果是:

enter image description here

但是有一个问题,我正在将代码添加到 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="&#xe000">Documents</a></li>
            <br>
            <li><a href="#" class="messages" data-icon="&#xe001">Messages</a></li>
            <br>
            <li><a href="#" class="signout" data-icon="&#xe002">Sign Out</a></li>
        </ul>
    </ul>
</nav>
</body>
</html>

因此,如您所见,子菜单无法正常工作,可能是什么导致了故障?

我怀疑不同的问题:

  1. 也许是包装代码的 onDomReady 属性,这样它将在 onDomReady 窗口事件中运行,如果是这样我如何在代码上指出:

    $(文档).ready(函数() { //在 menu.js 中添加所有 JS 代码 });

  2. 规范化的 css,但应该进行重置....

  3. jquery 1.9.0 中存在问题,可能是使用 js 的顺序...

你怎么看?

最佳答案

是的,你是对的;

onDomReadycode 是:

$(document).ready(function(){
//your code
})

就好像您将 jsfiddle 中的事件更改为 body wrap 一样,它不会起作用。

关于javascript - jsfiddle 代码工作但在演示页面中时不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14427258/

相关文章:

javascript - Trufjs 上的 *pointsWithinPolygon*

javascript - 预加载器 - 从子页面返回主页面时如何关闭它?

html - 响应式 map 上的标记

html - 将 <nav> 与 &lt;header&gt; CSS 内联

javascript - 正确使用ag-grid

javascript - 为什么在下面的 angularjs 示例中 $q 未定义?

javascript - 如何以map firestore web的形式将集合中具有值的所有文档推送到另一个集合

jquery - 使用angular js在li标签中添加标题

JavaScript 在多个模式上添加类

html - 字体中的嵌入式填充/边距