iPhone Web App Div 标签在 Safari 中重新加载
Posted
技术标签:
【中文标题】iPhone Web App Div 标签在 Safari 中重新加载【英文标题】:iPhone Web App Div Tag Reloading in Safari 【发布时间】:2010-11-03 02:42:20 【问题描述】:我的 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>
【问题讨论】:
这似乎主要与编程有关。这是 *** 的领域。 【参考方案1】:我认为display = 'block'
被定义为同时显示 div 并强制重新加载。所以你看到的是它的工作原理。
要在不重新加载/更新的情况下使 div 可见,您需要设置可见性标志。使用:
hza.style.visibility = state;
状态为“可见”或“隐藏”。
【讨论】:
设置可见性但不显示会导致文档中出现巨大的空白,而缺少的<div>
会消失
另外,这实际上并没有什么不同 - 我的浏览器仍然跳到页面顶部(虽然没有重新加载)【参考方案2】:
在showhide
末尾添加return false;
有帮助吗?
【讨论】:
以上是关于iPhone Web App Div 标签在 Safari 中重新加载的主要内容,如果未能解决你的问题,请参考以下文章
iPhone JavaScript Web App 的地理位置