gpt4 book ai didi

javascript - 如何让备用样式表在 iOS5 Safari 上工作?

转载 作者:行者123 更新时间:2023-11-28 10:16:13 25 4
gpt4 key购买 nike

我一直在为 iPad 开发 HTML5 应用程序。该应用程序的一部分包括使用替代样式表。这在 iOS 4 Safari 上运行良好,在我的桌面上的 Safari 上也运行良好。然而,我刚刚将其中一台 iPad 升级到 iOS 5 beta,它就不再工作了。有什么想法吗?

这是我的代码。

function (options) {
var i, a, main;
for (i = 0; (a = document.getElementsByTagName("link")[i]); i++) {
if (a.rel.indexOf("style") != -1
&& a.title) {
a.disabled = true;
if (a.title == options.title) {
a.disabled = false;
console.log('The theme should be changing to : ' + a.title);
}
}

最佳答案

在搜索 SO 和网络后,我对任何解决方案都不满意。所以我想出了一个新的解决方案,可以在 chrome、ff、ie 和 safari 中运行,并且可以在旧 ipad 上运行 safari:

第一组样式:

<link rel="stylesheet"              href="./codebase/touchui.css"       data-title="default"        type="text/css" media="screen" charset="utf-8">
<link rel="alternate stylesheet" href="./codebase/ios.css" data-title="ios" type="text/css" media="screen" charset="utf-8">
<link rel="alternate stylesheet" href="./codebase/jq.css" data-title="jq" type="text/css" media="screen" charset="utf-8">
<link rel="alternate stylesheet" href="./codebase/sky.css" data-title="sky" type="text/css" media="screen" charset="utf-8">
<link rel="alternate stylesheet" href="./codebase/green.css" data-title="green" type="text/css" media="screen" charset="utf-8">

注意属性“data-title”,这是一个用户定义的属性。

然后使用这个函数来更改样式表,(请注意,我将其设置在应用程序范围内,您可以将其设为标准函数:

app = {}

app.styleSet=function(title) {
var i, a
var o;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++)
if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute('data-title') ) {
if (a.getAttribute('data-title') == title)
o = a

a.setAttribute("rel", "alternate stylesheet");
a.setAttribute("title", a.getAttribute('data-title'));
a.disabled = true
}

o.setAttribute("title", undefined);
o.setAttribute("rel", "stylesheet");
o.disabled = false
//app.cookieCreate("style", title, 365);
}

关于javascript - 如何让备用样式表在 iOS5 Safari 上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6550068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com