javascript - 当 page.html 位于另一个文件夹中时,幻灯片菜单停止工作

标签 javascript jquery css html

所以我有这个侧边菜单,点击后会展开。它在我的 index.html 页面和根文件夹中的所有其他页面中工作正常。

但是如果我打开文件夹内的页面 - 例如 ../blog/page.html 然后侧边菜单不起作用,你可以点击它但它不会滑出。该页面使用相同的 CSS 和 JS 工作表。

我错过了什么?

代码示例如下。

HTML:

<!-- Menu -->
                <section id="menu">

                    <!-- Search -->
                        <section>
                            <form class="search" method="get" action="#">
                                <input type="text" name="query" placeholder="Search" />
                            </form>
                        </section>

                    <!-- Links -->
                        <section>
                            <ul class="links">
                                <li>
                                    <a href="#">
                                        <h3>Lorem ipsum</h3>
                                        <p>Feugiat tempus veroeros dolor</p>
                                    </a>
                                </li>
                                <li>
                                    <a href="#">
                                        <h3>Dolor sit amet</h3>
                                        <p>Sed vitae justo condimentum</p>
                                    </a>
                                </li>
                                <li>
                                    <a href="#">
                                        <h3>Feugiat veroeros</h3>
                                        <p>Phasellus sed ultricies mi congue</p>
                                    </a>
                                </li>
                                <li>
                                    <a href="#">
                                        <h3>Etiam sed consequat</h3>
                                        <p>Porta lectus amet ultricies</p>
                                    </a>
                                </li>
                            </ul>
                        </section>

                    <!-- Actions -->
                        <section>
                            <ul class="actions vertical">
                                <li><a href="#" class="button big fit">Log In</a></li>
                            </ul>
                        </section>

                </section>

JS:

        // Menu.
        $menu
            .appendTo($body)
            .panel({
                delay: 500,
                hideOnClick: true,
                hideOnSwipe: true,
                resetScroll: true,
                resetForms: true,
                side: 'right',
                target: $body,
                visibleClass: 'is-menu-visible'
            });

    // Search (header).
        var $search = $('#search'),
            $search_input = $search.find('input');

        $body
            .on('click', '[href="#search"]', function(event) {

                event.preventDefault();

                // Not visible?
                    if (!$search.hasClass('visible')) {

                        // Reset form.
                            $search[0].reset();

                        // Show.
                            $search.addClass('visible');

                        // Focus input.
                            $search_input.focus();

                    }

            });

        $search_input
            .on('keydown', function(event) {

                if (event.keyCode == 27)
                    $search_input.blur();

            })
            .on('blur', function() {
                window.setTimeout(function() {
                    $search.removeClass('visible');
                }, 100);
            });

CSS:

                        #header .main ul li > a:before {
                        display: block;
                        height: inherit;
                        left: 0;
                        line-height: inherit;
                        position: absolute;
                        text-align: center;
                        text-indent: 0;
                        top: 0;
                        width: inherit;
                    }

最佳答案

正如 Alex 所说,您需要在每个 html 文件中设置正确的路径。例如,在 blog/page.html 中,您的脚本路径为:***../**assets/js/whatever-your-script-is.js*

确保对所有脚本文件(查询、响应、skull、util 等)执行此操作。

关于javascript - 当 page.html 位于另一个文件夹中时,幻灯片菜单停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41891275/

相关文章:

jQuery - 将导航焦点拉到页面加载时的特定链接

javascript - 使用 JavaScript 更新 div 内容

javascript - 使用另一个元素的 x 和 y 偏移定位一个 div 元素

函数中的 JavaScript 原型(prototype)委托(delegate)

javascript - 更改导航项的颜色(下拉 - 单击)

javascript - 阿拉伯文本零宽度连接器在元素之间不起作用

加载多个动画时的jQuery无限循环

javascript - 在 <td> 元素中包含 <span> 和 <br> 是一种错误的形式吗?

javascript - document.createElement 非法调用

javascript - 更新嵌套的不可变状态(redux)