javascript - Cordova 和 Bootstrap : unable to open a modal via javascript

标签 javascript jquery twitter-bootstrap cordova

序言:我知道这个问题很老了,但是,就我而言,不是由于加载两次 Jquery

我的html代码:

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Security-Policy" content="style-src 'self' 'unsafe-inline'; media-src *">
        <meta name="format-detection" content="telephone=no">
        <meta name="msapplication-tap-highlight" content="no">
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
        <link rel="stylesheet" type="text/css" href="css/index.css">
        <link rel="stylesheet" type="text/css" href="node_modules/bootstrap/dist/css/bootstrap.min.css">
        <script src="node_modules/jquery/dist/jquery.min.js"></script>
        <script src="node_modules/bootstrap/dist/bootstrap.min.js"></script>
        <title>Maiscai</title>
    </head>
    <body>

        <nav class="navbar navbar-default navbar-fixed-top">
            <div class="container">
                <a class="navbar-brand" href="#">Maiscai v0.03</a>
            </div>
        </nav>


        <div class="container-fluid">

            <div class="row" id="progress_bar_row">
                <div clas="col-sm-12">
                    <div class="progress col">
                        <div class="progress-bar progress-bar-info" 
                                role="progressbar" 
                                style="width: 0%">
                        </div>
                    </div>
                </div>
            </div>

            <div class="row" id="result_row">
                <div class="col-sm-12" id="result_cell"></div>
            </div>

            <div class="row" id="log_row" style="border: 1px solid gray;">
                <div class="col-sm-12">
                    <div id="log" style="overflow: auto;"></div>
                </div>
            </div>

        </div>

        <!-- Modal -->
        <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
            <div class="modal-dialog" role="document">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
                    </div>

                    <div class="modal-body">
                        ... this is the body
                    </div>

                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                        <button type="button" class="btn btn-primary">Save changes</button>
                    </div>
                </div>
            </div>
        </div>

        <script type="text/javascript" src="cordova.js"></script>
        <script type="text/javascript" src="js/cache.js"></script>
        <script type="text/javascript" src="js/index.js"></script>
    </body>
</html>

在文件 js/index.js 中我定义了这个

 // Application bootstapper
initialize: function() {
    document.addEventListener(
        'deviceready', 
        app.onDeviceReady, 
        false
    );
 }

onDeviceReady: function() {
    .... 

    // Modal triggers
    $(document).on('click','.list-group-item', function (){
        $('#myModal').modal("show");
    });

    ....
},

请注意,实际上我将事件绑定(bind)到文档,因为 .list-group-item 元素是在运行时创建的。

问题是:当我单击其中一项时,出现此错误

I/chromium( 6186): [INFO:CONSOLE(53)] "Uncaught TypeError: Object [object Object] has no 
method 'modal'", source: file:///android_asset/www/js/index.js (53)

我已经尝试通过 jQuery 1.11.3 和最新的 2.x 可用,但同样的问题。

Bootstrap 版本为 3.3.6

最佳答案

感谢@adeneo评论,我发现了问题:由于路径中的错误,根本没有包含bootstrap.min.js文件。

关于javascript - Cordova 和 Bootstrap : unable to open a modal via javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34157930/

相关文章:

javascript - jQuery 自动完成 - 如何为 TextArea 下拉菜单设置 CSS 样式?

javascript隐式全局变量

javascript - 悬停时,子菜单未按预期停留

html - 居中表格标签和行中的文本

javascript - value清空后如何添加回占位符?

javascript - 干燥 jquery 选择器

Javascript:如何从表中的所有选定复选框中获取值

javascript - 如何延迟每个项目的 Bootstrap 轮播?

javascript - 如何在我的 aspx 页面上显示变量值后面的代码

javascript - 在 HTML5 验证后禁用所有表单上的提交按钮的通用 jQuery