jquery移动导航栏添加未知按钮

标签 jquery mobile jquery-mobile navbar

我已经搜索这个问题两个多小时了,我不明白为什么这么简单的东西不起作用。

我尝试在页脚中实现一个导航栏,但我不知道为什么 jquery 添加一些按钮,布局变得很糟糕。

这是我的代码:

<!DOCTYPE html> 
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <title>VeryGoodTrip</title>
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
    <script type="text/javascript" src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>   
</head> 
<body>  
    <div data-role="page">
        <div data-role="header">
            <h1>Destinations</h1>
        </div><!-- /header -->

        <div data-role="content" data-theme="c">
            <ul data-role="listview">
                <li><a href="index.html">
                    <img src="img/corse.png" />
                    <h3>Corse</h3>
                    <p>Corse</p>

                </a></li>
                <li><a href="index.html">
                    <img src="img/golf.png" />
                    <h3>Golf du Lyon</h3>
                    <p>Golf du Lyon</p>
                </a></li>
                <li><a href="index.html">
                    <img src="img/lerins.png" />

                    <h3>Iles de lerins</h3>
                    <p>Iles de lerins</p>
                </a></li>
                <li><a href="index.html">
                    <img src="img/menton.png" />
                    <h3>Menton</h3>
                    <p>Menton</p>

                </a></li>
                <li><a href="index.html">
                    <img src="img/monaco.png" />
                    <h3>Monaco</h3>
                    <p>Monaco</p>
                </a></li>
                <li><a href="index.html">
                    <img src="img/nice.png" />      
                    <h3>Nice</h3>
                    <p>Nice</p>
                </a></li>
                <li><a href="index.html">
                    <img src="img/tropez.png" />
                    <h3>Saint-Tropez</h3>
                    <p>Saint-Tropez</p>
                </li>
            </ul>
        </div><!-- /content -->

        <div data-role="footer" data-position="fixed">      
            <div data-role="navbar" data-iconpos="right">
                <ul>
                    <li><a href="index.html" data-icon="refresh" class="ui-state-persist ui-btn-active">Destinations</a></li>
                    <li><a href="index.html" data-icon="refresh">Activités</a></li>
                    <li><a href="index.html" data-icon="refresh">Planning</a></li>
                </ul>
            </div><!-- /navbar -->
        </div><!-- /footer -->

    </div><!-- /page -->
</body>

这就是我用 firebug 得到的结果:

<div data-position="fixed" data-role="footer" class="ui-footer ui-bar-a ui-footer-fixed fade ui-fixed-overlay" role="contentinfo" style="top: -155px;">
    <a href="index.html" class="ui-btn-left ui-btn ui-btn-up-a ui-btn-corner-all ui-shadow" data-theme="a">
        <span class="ui-btn-inner ui-btn-corner-all">
            <span class="ui-btn-text"></span>
        </span>
    </a>
    <div data-iconpos="right" data-role="navbar" class="ui-navbar" role="navigation">
        **<a href="index.html" data-theme="a" class="ui-btn ui-btn-up-a ui-btn-icon-right">
            <span class="ui-btn-inner">
                <span class="ui-btn-text"></span>
            </span>
        </a>**
        <ul class="ui-grid-c">
            <a href="index.html" class="ui-block-a ui-btn ui-btn-icon-right ui-btn-up-a" data-theme="a">
                <span class="ui-btn-inner">
                    <span class="ui-btn-text"></span>
                </span>
            </a>
            <li class="ui-block-b">
                <a href="index.html" data-theme="a" class="ui-btn ui-btn-icon-right ui-btn-up-a">
                    <span class="ui-btn-inner">
                        <span class="ui-btn-text"></span>
                    </span>
                </a>
                <a class="ui-state-persist ui-btn-active ui-btn ui-btn-icon-right ui-btn-up-a" data-icon="refresh" href="index.html" data-theme="a">
                    <span class="ui-btn-inner">
                        <span class="ui-btn-text">Destinations</span>
                        <span class="ui-icon ui-icon-refresh ui-icon-shadow"></span>
                    </span>
                </a>
            </li>
            <li class="ui-block-c">
                <a data-icon="refresh" href="index.html" data-theme="a" class="ui-btn ui-btn-icon-right ui-btn-up-a">
                    <span class="ui-btn-inner">
                        <span class="ui-btn-text">Activit?s</span>
                        <span class="ui-icon ui-icon-refresh ui-icon-shadow"></span>
                    </span>
                </a>
            </li>
            <li class="ui-block-d">
                <a data-icon="refresh" href="index.html" data-theme="a" class="ui-btn ui-btn-up-a ui-btn-icon-right">
                    <span class="ui-btn-inner">
                        <span class="ui-btn-text">Planning</span>
                        <span class="ui-icon ui-icon-refresh ui-icon-shadow"></span>
                    </span>
                </a>
            </li>
        </ul>
    </div><!-- /navbar -->
</div>

正如您所看到的,下面的两个按钮不应该出现在此处,有什么想法吗?

<a href="index.html" class="ui-btn-left ui-btn ui-btn-up-a ui-btn-corner-all ui-shadow" data-theme="a">
<span class="ui-btn-inner ui-btn-corner-all">
<span class="ui-btn-text"></span>
</span>
</a>

<a href="index.html" data-theme="a" class="ui-btn ui-btn-up-a ui-btn-icon-right">
<span class="ui-btn-inner">
    <span class="ui-btn-text"></span>
</span>
</a>

谢谢

最佳答案

您忘记关闭<a>标签,因此 HTML 元素没有正确嵌套。问题出在 data-role="content 中的最后一个列表项。分区:

            <li>
                <a href="index.html">
                    <img src="img/tropez.png" />
                    <h3>Saint-Tropez</h3>
                    <p>Saint-Tropez</p>
            </li>

应该是:

            <li>
                <a href="index.html">
                    <img src="img/tropez.png" />
                    <h3>Saint-Tropez</h3>
                    <p>Saint-Tropez</p>
                </a>
            </li>

以下是上述修复的演示:http://jsfiddle.net/9q6My/ (我在添加的结束 </a> 标签旁边添加了一条评论)

正如您从我上面格式化的代码中看到的,我确保缩进每个嵌套标签,以便我可以看到每个标签都已正确关闭。

关于jquery移动导航栏添加未知按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9423680/

相关文章:

python - 如何在移动设备上使用 Python 访问串行端口?

css - Bootstrap 默认导航栏在移动 View 中未折叠

css - 删除 Jquery Mobile 复选框覆盖

javascript - IE8 Jquery JavaScript "Error: Object required"错误

javascript - 使用键码(箭头)停止窗口滚动,event.preventDefault() 不起作用?

mobile - Flutter redux 显示警报对话框

jquery mobile 和 Jquery Jplayer 冲突

javascript - 在 PhoneGap - Jquerymobile 应用程序上多次触发事件(甚至循环)

javascript - 在另一个元素悬停时停止动画

javascript - 查看具有为所有 div 调用函数的同一类的多个 div?