javascript 在网络应用程序中不起作用

标签 javascript html css cordova

我正在使用 phonegap 开发 Android 应用程序。我在我的应用程序上创建了一个最喜欢的部分,我使用 localstorage将文件名的值设置为 1 。然后我创建了一个名为 fav.html 的页面并设置了 display我列表的值 none像这样:

<ul class="table-view">
 <li class="table-view-cell" style="display: none;">
<a class="navigate-left padder" href="modele1.html" data-transition="slide-in" >item1</a>
 </li>
 <li class="table-view-cell" style="display: none;">
<a class="navigate-left padder" href="modele2.html" data-transition="slide-in" >item2</a>
 </li>
</ul>
比我使用这样的 javascript 代码来更改 displayblock

<script>
    if (localStorage.getItem("modele1.html")==1){document.getElementsByClassName("table-view-cell")[0].style.display = 'block';}
    if (localStorage.getItem("modele2.html")==1){document.getElementsByClassName("table-view-cell")[1].style.display = 'block';}
</script>

我已经检查过并且 localstorage modele1.html 的值和 modele2.html设置为 1 .该代码在 chrome 上运行良好,但是当我使用 phonegap 构建代码时,脚本不起作用。我什至手动将脚本添加到 fav.html 的末尾在 </body> 之前标记并重建应用程序,但它仍然无法在手机上运行?请帮助我,这很重要。

最佳答案

我不太确定,但我想到的一件事是您没有在等待 deviceready 事件。这对于 Cordova 可能是必需的,但对于 Chrome 则不需要,因为 Cordova 需要在启动期间加载实现,而 Chrome 已经提供了它。试试这个

<script>
document.addEventListener("deviceready", function () {
    // alert("deviceready event");
    if (localStorage.getItem("modele1.html")==1) {
        // alert("1");
        document.getElementsByClassName("table-view-cell")[0].style.display = 'block';
    }
    if (localStorage.getItem("modele2.html")==1){
        // alert("2");
        document.getElementsByClassName("table-view-cell")[1].style.display = 'block';
    }
}, false);
</script>

如果它仍然没有按预期工作,您可以取消注释警报以查看执行是否到达那里。

关于javascript 在网络应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28398289/

相关文章:

html - 如何防止我的 flex 元素在移动 View 中溢出(最小宽度 : 0 not working! )?

javascript - D3js "bars.enter().attr"不是一个函数

javascript - 响应式网格上的 Bootstrap div 顺序

javascript - 显示通过 html 表单上传的照片预览

css - 当悬停在另一个元素上时触发元素的过渡

html - Bootstrap 导航栏问题

javascript - 使用 javascript/asp.net 选择多个项目

javascript - 使用状态切换 CSS 类

HTML:位于多行标签左侧的复选框输入

html - Safari 浏览器在图像上显示模糊动画以实现缩放和不透明度 CSS 动画