我有一个JS函数,应该获得CSS swap的样式表元素。 在IPHONE或桌面版Chrome和Safari上运行页面时,我能够成功交换css。
我的问题出现在Android浏览器
上if (a.getAttribute("rel").indexOf("style") != -1) {
从我的代码返回FALSE。
似乎在
Android Web浏览器a.getAttribute("rel))" : stylesheet
元素不存在。
知道为什么会出现这种行为以及如何解决它?
// Swap CSS
changeStyle: function(state) {
var i, a, url, i = 0;
for (i; (a = document.getElementsByTagName("link")[i]); i++) {
if (a.getAttribute("rel").indexOf("style") != -1) {
url = a.href;
if (state == 'accessible') {
a.href = 'resources/css/app-accesibility.css';;
}
else if (state == 'normal') {
a.href = 'resources/css/app.css';
}
}
}
}
答案 0 :(得分:1)
可能是其他链接元素被添加到android上的头部,插件或其他任何东西。在访问之前确保rel
属性存在:
if (a.getAttribute("rel") && a.getAttribute("rel").indexOf("style") != -1) {