Html 在iOS全屏Web应用程序中使用链接
我正在开发一个快速登录页面,以便在同一台服务器上访问一些小型的、经过移动优化的应用程序。基本上是仪表板模式。我想让它出现在我的主屏幕上,这样我就可以在全屏模式下访问任何应用程序,而不是在工具栏繁重的移动Safari中。然而,当我点击一个链接时,它会把我从全屏模式带到Safari——这正是我不想要的Html 在iOS全屏Web应用程序中使用链接,html,ios,web-applications,homescreen,Html,Ios,Web Applications,Homescreen,我正在开发一个快速登录页面,以便在同一台服务器上访问一些小型的、经过移动优化的应用程序。基本上是仪表板模式。我想让它出现在我的主屏幕上,这样我就可以在全屏模式下访问任何应用程序,而不是在工具栏繁重的移动Safari中。然而,当我点击一个链接时,它会把我从全屏模式带到Safari——这正是我不想要的 在导航到其他页面时,是否有方法(例如使用锚定的目标属性)保持全屏模式?或者我应该将所有内容都放到中吗?您需要使用一些javascript截获onclick事件。例如,下面是应用于标记的noeffect
在导航到其他页面时,是否有方法(例如使用锚定的
目标
属性)保持全屏模式?或者我应该将所有内容都放到
中吗?您需要使用一些javascript截获onclick
事件。例如,下面是应用于
标记的noeffect
css类的作用:
window.onload = function () {
function fullscreen() {
var a = document.getElementsByTagName("a");
for (var i = 0; i < a.length;i++) {
if (a[i].className.match("noeffect")) {
// Does nothing
}
else {
a[i].onclick = function () {
window.location = this.getAttribute("href");
return false;
};
}
}
}
};
window.onload=函数(){
函数全屏(){
var a=document.getElementsByTagName(“a”);
对于(变量i=0;i
每当在mobile Safari中出现一次单击时,Safari将使其退出全屏模式。表单提交将保持全屏模式,无论是POST
还是GET
。如果通过javascript设置了window.location
,它也将保持全屏模式
我更喜欢委托,而不是在每个锚上设置事件处理程序。下面是一个jQuery示例:
$(window).click(handleClick);
function handleClick(e) {
var target = $(e.target).closest('a');
if( target ) {
e.preventDefault();
window.location = target.attr('href');
}
}
是的,我不久前就知道了。但是谢谢你的回答!很高兴有它在上面。我对框架、表单和事件做了更多的实验,所以我也应该将这些结果放在这里。+1委托比循环所有锚并手动向每个锚添加事件侦听器更高效、更干净、更可重用。