替代样式表在iOS5中不起作用
我有一个使用替代样式表的网站,并使用iOS4与iPad进行了合作。然而,iPad运行的iOS5并没有这样做。我还发现该网站在我运行iOS4的iPad上运行良好,但在运行iOS5的iPad上运行不好,这表明这可能是浏览器问题 我的网站有以下代码片段替代样式表在iOS5中不起作用,ios5,css,Ios5,Css,我有一个使用替代样式表的网站,并使用iOS4与iPad进行了合作。然而,iPad运行的iOS5并没有这样做。我还发现该网站在我运行iOS4的iPad上运行良好,但在运行iOS5的iPad上运行不好,这表明这可能是浏览器问题 我的网站有以下代码片段 <link rel="alternate stylesheet" id="smallScr" title="smallScr" type="text/css" href="/style/smallscreen.style.css" /> &
<link rel="alternate stylesheet" id="smallScr" title="smallScr" type="text/css" href="/style/smallscreen.style.css" />
<link rel="alternate stylesheet" id="microScr" title="microScr" type="text/css" href="/style/microscreen.style.css" />
.
.
var varDevice = 'iPad';
alert('detected small (ipad) screen device = ' + screen.width + ' x ' + screen.height);
setActiveStyleSheet('smallScr');
.
.
var varDevice='iPad';
警报('检测到的小(ipad)屏幕设备='+屏幕宽度+'x'+屏幕高度);
setActiveStyleSheet('smallScr');
在这两种情况下,警报都会被调用,但我的备用工作表不会应用到运行iOS5的iPad上
有没有人遇到过这个问题并找到了解决方案
谢谢
Rob也有同样的问题,他查看了规范,找到了一个在大多数浏览器中都能正常工作的解决方案 在html标题中包括以下内容:
<meta http-equiv="Default-Style" content="">
我也有同样的问题。ios4或任何其他浏览器,交换样式表都没有问题,但ios5根本不起作用。它将加载默认样式表,然后当它切换到备用样式表时,没有任何样式表处于活动状态。经过一些尝试和错误,我得到了以下为我工作。虽然不完全有效,但似乎确实有效 将
$('link[rel*=stylesheet]')。每个更改为$('link')。每个和this.disabled=false
更改为$(this.attr('disabled',false))代码>似乎起了作用
<link rel="stylesheet" type="text/css" href="style.css" title="style" media="screen" />
<link rel="alternate stylesheet" type="text/css" href="style2.css" title="style2" media="screen" />
var availableStylesheets = [ "style", "style2" ];
function stylesheetSwitch( styleName )
{
$('link').each( function() {
var inStyles = false;
for( var i=0; i < availableStylesheets.length; i++){
if( $(this).attr('title') == availableStylesheets[i] ){
inStyles = true;
}
}
if(inStyles){
$(this).attr( 'disabled', true );
if ($(this).attr('title') == styleName) {
$(this).attr( 'disabled', false );
}
}
});
}
var availableStylesheets=[“样式”,“样式2”];
函数stylesheetSwitch(styleName)
{
$('link')。每个(函数(){
var inStyles=假;
对于(变量i=0;i
<link rel="stylesheet" type="text/css" href="style.css" title="style" media="screen" />
<link rel="alternate stylesheet" type="text/css" href="style2.css" title="style2" media="screen" />
var availableStylesheets = [ "style", "style2" ];
function stylesheetSwitch( styleName )
{
$('link').each( function() {
var inStyles = false;
for( var i=0; i < availableStylesheets.length; i++){
if( $(this).attr('title') == availableStylesheets[i] ){
inStyles = true;
}
}
if(inStyles){
$(this).attr( 'disabled', true );
if ($(this).attr('title') == styleName) {
$(this).attr( 'disabled', false );
}
}
});
}