Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript WebWorks应用程序根本不工作,但在Ripple和Chrome以及BB浏览器中工作_Javascript_Html_Blackberry_Css_Blackberry Webworks - Fatal编程技术网

Javascript WebWorks应用程序根本不工作,但在Ripple和Chrome以及BB浏览器中工作

Javascript WebWorks应用程序根本不工作,但在Ripple和Chrome以及BB浏览器中工作,javascript,html,blackberry,css,blackberry-webworks,Javascript,Html,Blackberry,Css,Blackberry Webworks,我正在开发一个简单的黑莓应用程序,它使用JSONP和Zepto.js。大部分代码编写得很快,我没有像我应该和将来那样使用Zepto,但现在只需要测试它,我相信我的所有代码到目前为止都是有效的(JS新手-只是学习) index.html的示例 <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.

我正在开发一个简单的黑莓应用程序,它使用JSONP和Zepto.js。大部分代码编写得很快,我没有像我应该和将来那样使用Zepto,但现在只需要测试它,我相信我的所有代码到目前为止都是有效的(JS新手-只是学习)

index.html的示例

<!DOCTYPE html>
<html>
    <head>
        <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
        <link  rel="stylesheet" type="text/css" href="css/bbsonic.css"><link />
        <link  rel="stylesheet" type="text/css" href="css/ocssui.css"><link />
        <title>Login</title>
        <script type="text/javascript" src="js/zepto.js"></script>
    </head>
    <body>
        <div data-role="page" class="page">

            <div data-role="header" class="header">
                <div id="header-logo">
                    <table>
                        <td valign="middle" class="museo">
                            <h1>BerrySonic</h1>
                        </td>
                    </table>
                </div>
            </div><!-- /header -->

            <div data-role="content" class="content" id="list-wrapper">
                <ul data-role="listview" id="servers" class="listview">
                       <li class="title-divider">Select a Subsonic Server</li>
                </ul>
            </div><!-- /content -->

        </div><!-- /page -->   
        <script type="text/javascript" src="js/index.js"></script>
    </body>
</html>

登录
贝里索尼克
  • 选择亚音速服务器
Index.js:

var db = window.openDatabase("bbsonic", "0.1", "SubSonic Server", 1024*1000);
$(document).ready = prepareDatabase();

function prepareDatabase() {                        
    db.transaction(function(tx) {
        var starterSQL = 'CREATE TABLE IF NOT EXISTS servers (id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR(255) NOT NULL, url VARCHAR(255) NOT NULL, port VARCHAR(255) NOT NULL, user VARCHAR(255) NOT NULL, pass VARCHAR(255) NOT NULL)';
        tx.executeSql(starterSQL, []);
    });
    showServerList();
}

function showServerList() {                     
    db.transaction(function (tx) {
        tx.executeSql('SELECT * FROM servers', [], function (tx, results) {
            var len = results.rows.length, i;
            for (i = 0; i < len; i++) {
                var id = results.rows.item(i).id;
                var name = results.rows.item(i).name;

                var parent = document.getElementById('servers');
                var listItem = document.createElement('a');
                listItem.setAttribute('href', 'main.html');
                listItem.setAttribute('onclick', 'setServerID(' + id + ')');
                if (i == 0) {
                    listItem.innerHTML = '<li class="first-item">' + name + '</li>';
                } else {
                    listItem.innerHTML = '<li>' + name + '</li>';
                }

                parent.appendChild(listItem);
            }

            var parent = document.getElementById('servers');
            var listItem = document.createElement('a');
            listItem.setAttribute('href','addnewserver.html');
            listItem.innerHTML = "<li>Add New Server</li>";
            parent.appendChild(listItem);
        });
    });
}

function setServerID(id) {
    sessionStorage.serverID = id;
}
var db=window.openDatabase(“bbsonic”、“0.1”、“亚音速服务器”,1024*1000);
$(document.ready=prepareDatabase();
函数prepareDatabase(){
数据库事务(功能(tx){
var starterSQL='如果服务器不存在,则创建表(id整数主键自动递增,名称VARCHAR(255)不为空,url VARCHAR(255)不为空,端口VARCHAR(255)不为空,用户VARCHAR(255)不为空,传递VARCHAR(255)不为空)';
tx.executeSql(starterSQL,[]);
});
showServerList();
}
函数showServerList(){
数据库事务(功能(tx){
tx.executeSql('SELECT*FROM servers',[],函数(tx,results){
var len=results.rows.length,i;
对于(i=0;i';
}否则{
listItem.innerHTML='
  • '+name+'
  • '; } parent.appendChild(列表项); } var parent=document.getElementById('servers'); var listItem=document.createElement('a'); setAttribute('href','addnewserver.html'); listItem.innerHTML=“
  • 添加新服务器”
  • ”; parent.appendChild(列表项); }); }); } 函数setServerID(id){ sessionStorage.serverID=id; }
    config.xml(从github复制了一个):

    
    贝里索尼克
    这是一个示例应用程序。
    访问共享
    录音
    地理定位
    使用照相机
    读取设备识别信息
    
    在chrome和ripple中,它工作得非常完美,但在blackberry上,它只加载标题,甚至不加载无序列表!甚至不知道如何调试它。。。
    非常感谢您的帮助。

    我不确定,但我认为您没有错误地使用某些HTML标记。通常,如果您制作了一个
    ,您将嵌套一个
    标记,然后将
    标记嵌套在其中。范例

    <table>
      <tr>
        <td><h1>BerrySonic</h1></td>
      </tr>
    </table>
    
    当您确实需要时:

    <li class="first-item"><a href="main.html">Server 1</a></li>
    <li><a href="main.html">Server 2</a></li>
    

  • 尝试进行这些更改,看看它是否解决了渲染问题。

    谢谢Core.B-我会尝试一下,让您知道发生了什么。我来自C#/VB.NET背景,开发工具是成功的关键,在设备上调试似乎没有什么办法。实际上是带有固定页眉和页脚的CSS导致了问题——但如果你没有暗示布局相关的问题,我不确定是JS还是CSS。
    <a href="main.html"><li class="first-item">Server 1</li></a>
    <a href="main.html"><li>Server 2</li></a>
    
    <li class="first-item"><a href="main.html">Server 1</a></li>
    <li><a href="main.html">Server 2</a></li>