2

I have my HTML5 as following.

<ul id="toolsmenu"></ul>

In the JS file I have

$("#toolsmenu").append("<li><a href='#msglist'…..……. ></a></li>");

This works without problem on Android 4.2 emulator. But the list does not show up when I use Android 2.3.3. Can someone please tell me why is this?

4

1 回答 1

1

与 2.x 相比,Android 4.x 对 HTML/JS 语法错误的容忍度更高,因此我建议检查您的代码中没有其他可能导致问题的内容。以下测试用例在 Android 2.3.4 上对我有用 - 2.3.3 的行为似乎不太可能有所不同。

<html>
    <head>
        <script type="text/javascript" charset="utf-8" src="cordova-2.8.0.js"></script>
        <script type="text/javascript" charset="utf-8" src="jquery-1.7.1.min.js"></script>
        <script type="text/javascript">
        function deviceready() {
            $("#toolsmenu").append("<li><a href='#msglist'>Message List</a></li>");
            var deviceInfo = 'Device Name: '     + device.name     + '<br />' +
                            'Device Cordova: '  + device.cordova + '<br />' +
                            'Device Platform: ' + device.platform + '<br />' +
                            'Device UUID: '     + device.uuid     + '<br />' +
                            'Device Model: '    + device.model     + '<br />' +
                            'Device Version: '  + device.version  + '<br />';

           $("#deviceProperties").html(deviceInfo);

        }
        document.addEventListener("deviceready", deviceready, true);
        </script>
    </head>
    <body>
        <ul id="toolsmenu"></ul>

        <p id="deviceProperties">Loading device properties...</p>
    </body>
</html>

我已将 Eclipse 项目和生成的 APK放在这里- 尝试下载它并在您的设备上运行它。

这是它在运行 Android 2.3.4 的 HTC HD2 上运行的屏幕截图:

在运行 Android 2.3.4 的 HTC HD2 上运行的测试用例

于 2013-06-16T08:56:35.743 回答