我正在开发一款可在iPad和iPhone上运行的触摸屏网页(用于家庭自动化)。我想知道的是能够根据屏幕大小动态设置触摸图标的大小。
如果我在iPad上,我需要150px到150px的图标,但如果我在iPhone上,我需要图标为75px×75px。
有没有办法使用jQuery动态设置图像大小?
答案 0 :(得分:2)
查看用户代理字符串,然后相应地设置它们。
我会这样做......
if (navigator.userAgent.match(/iPhone/)) {
$('body').addClass('iphone');
} else if (navigator.userAgent.match(/iPad/)) {
$('body').addClass('ipad');
}
如果你只是为此使用jQuery,你可以用......替换那些addClass()
行来减少一些膨胀。
var body = document.getElementsByTagName('body')[0];
body.className = body.className + ' iphone';
...或者确保它在源头看起来很漂亮......
var body = document.getElementsByTagName('body')[0];
var bodyClasses = body.className.split(' ');
bodyClasses.push('iphone');
body.className = bodyClasses.join(' ');
.ipad #nav button {
width: 150px;
height: 150px;
}
.iphone #nav button {
width: 75px;
height: 75px;
}
这假设您的按钮默认会在浏览器中缩放 - 如果您有两个不同的图像,则可以更改background-image
CSS属性。
答案 1 :(得分:1)
答案 2 :(得分:1)
您可以检查字符iPad
或iPhone
是否出现在navigator.userAgent
中,并相应地设置图片网址。