我的iOS Web应用程序是用HTML和CSS编写的。我有一个显示/隐藏div图层的文本链接。它完美无缺,但是当我更改div标签的可见性时,它会在safari中重新加载页面,而不是在webapp中显示div。这是我启用Webapp界面的代码:
<meta name="apple-mobile-web-app-capable" content="yes">
这是我在点击链接时显示div标签的javascript:
<script language="javascript">
<!--
var state = 'none';
function showhide(layer_ref) {
if (state == 'block') {
state = 'none';
}
else {
state = 'block';
}
if (document.getElementById &&!document.all) {
hza = document.getElementById(layer_ref);
hza.style.display = state;
}
}
//-->
</script>
div层: 内容
最后,显示div的链接:
<a href="#" class="Action" onclick="showhide('optionpanel');">Menu</a>
答案 0 :(得分:1)
我认为display = 'block'
被定义为显示div并同时强制重新加载。所以你所看到的是它的工作方式。
要在不重新加载/更新的情况下使div可见,您需要设置可见性标志。使用:
hza.style.visibility = state;
状态是“可见”或“隐藏”。
答案 1 :(得分:0)
将return false;
添加到showhide
的末尾会有帮助吗?