1

我从这里得到了代码,从这里得到了相关文件。我只是改变了路径,只保留了一个菜单栏,它对我不起作用。这是我能看到的: 在此处输入图像描述

这是我的代码:

在 HTML 头中:

<link rel="stylesheet" href="Rules/navbar/jquery.ui.all.css" />
<script src="jquery-1.7.1.js"></script>
<script src="Rules/navbar/jquery.ui.core.js"></script>
<script src="Rules/navbar/jquery.ui.widget.js"></script>
<script src="Rules/navbar/jquery.ui.position.js"></script>
<script src="Rules/navbar/jquery.ui.button.js"></script>
<script src="Rules/navbar/jquery.ui.menu.js"></script>
<script src="Rules/navbar/jquery.ui.menubar.js"></script>
<script>
$(function() {
    function select(event, ui) {
        $("<div/>").text("Selected: " + ui.item.text()).appendTo("#log");
        if (ui.item.text() == 'Quit') {
            $(this).menubar('destroy');
        }
    }
    $("#bar1").menubar({
        position: {
            within: $("#demo-frame").add(window).first()
        },
        select: select
    });

    $(".menubar-icons").menubar({
        autoExpand: true,
        menuIcon: true,
        buttons: true,
        position: {
            within: $("#demo-frame").add(window).first()
        },
        select: select
    });

    $("#bar3").menubar({
        position: {
            within: $("#demo-frame").add(window).first()
        },
        select: select,
        items: ".menubarItem",
        menuElement: ".menuElement"
    });
});
</script>
<style>
    #bar1, #bar2 { margin: 0 0 4em; }
</style>

在 HTML 正文中:

<div class="demo">

<ul id="bar2" class="menubar-icons">
    <li>
        <a href="#File">File</a>
        <ul>
            <li><a href="#Open...">Open...</a></li>
            <li class="ui-state-disabled">Open recent...</li>
            <li><a href="#Save">Save</a></li>
            <li><a href="#Save as...">Save as...</a></li>
            <li><a href="#Close">Close</a></li>
            <li><a href="#Quit">Quit</a></li>
        </ul>
    </li>
    <li>
        <a href="#Edit">Edit</a>
        <ul>
            <li><a href="#Copy">Copy</a></li>
            <li><a href="#Cut">Cut</a></li>
            <li class="ui-state-disabled">Paste</li>
        </ul>
    </li>
    <li>
        <a href="#View">View</a>
        <ul>
            <li><a href="#Fullscreen">Fullscreen</a></li>
            <li><a href="#Fit into view">Fit into view</a></li>
            <li>
                <a href="#Encoding">Encoding</a>
                <ul>
                    <li><a href="#Auto-detect">Auto-detect</a></li>
                    <li><a href="#UTF-8">UTF-8</a></li>
                    <li>
                      <a href="#UTF-16">UTF-16</a>
                      <ul>
                         <li><a href="#Option 1">Option 1</a></li>
                         <li><a href="#Option 2">Option 2</a></li>
                         <li><a href="#Option 3">Option 3</a></li>
                         <li><a href="#Option 4">Option 4</a></li>
                      </ul>
                   </li>
                </ul>
            </li>
            <li><a href="#Customize...">Customize...</a></li>
        </ul>
    </li>
</ul>

</div>
4

2 回答 2

6

让你的代码在这里工作:http : //jsfiddle.net/cavmj/

使用您提供的 javascript 和 HTML。所以我猜这是一些没有正确加载的文件。

确保它加载:

<script src="Rules/navbar/jquery.ui.menu.js"></script>
<script src="Rules/navbar/jquery.ui.menubar.js"></script>

并且CSS文件可以导入:

jquery.ui.menu.css
jquery.ui.menubar.css

也许尝试直接链接:

<link rel="stylesheet" href=http://code.jquery.com/ui/1.8.19/themes/base/jquery-ui.css">
<link rel="stylesheet" href="http://view.jqueryui.com/menubar/themes/base/jquery.ui.menu.css">
<link rel="stylesheet" href="http://view.jqueryui.com/menubar/themes/base/jquery.ui.menubar.css">

如果这不是问题,请尝试检查控制台错误。

如果您有 firefox 和 firebug、Chrome 或 IE9(或更高版本):按 F12 并选择 Console

那里会说它是否在加载时遇到任何 JavaScript 错误。


检查了你的链接。您缺少 jquery ui、菜单和菜单栏脚本。尝试添加以下内容:

<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js" type="text/javascript"></script>
<script src="http://view.jqueryui.com/menubar/ui/jquery.ui.menu.js" type="text/javascript"></script>
<script src="http://view.jqueryui.com/menubar/ui/jquery.ui.menubar.js" type="text/javascript"></script>

而且您在 jquery ui CSS 文件中缺少引用,它应该是

<link rel="stylesheet" href="http://code.jquery.com/ui/1.8.19/themes/base/jquery-ui.css">
于 2012-04-18T18:59:51.437 回答
1

一切都在 jsfiddle.net 上工作,因为所有的 css 和 js 都引用了原始站点,并且内部链接也做同样的事情。

如果您想让它在本地工作,请尝试将所有 js 和 css 引用一一替换为您的本地文件,然后您将看到缺少哪些 css 或 js 或图像文件。

我遇到了同样的问题,经过这些步骤,现在一切都很好,无需外部参考即可工作。

于 2012-04-22T23:42:19.710 回答