之前都習慣用放大網頁比例來解決此問題,只是當你在 demo 網頁的版型時,放大比例就不好評估了,所以只好為了特定網頁來增加只變動字體大小的功能。
放大、縮小字型的功能,在網路上還滿多範例的,你可以用 CSS、Javascript or jQuery 等等方法來實現,在這裡我是使用最基礎的 Javascript 來做範例。
放大縮小的功能如下圖所示,在這裡只舉例放大和縮小這兩個功能:
這裡是用圖片來當作這兩個功能,然後在這兩個圖片加上 Javascript 的放大、縮小程式,分別叫做 increaseFontSize() 和 decreaseFontSize() :
<div>
<a href="javascript:decreaseFontSize();">
<img src="~/Content/images/fonts_s.jpg">
</a>
<a href="javascript:increaseFontSize();">
<img src="~/Content/images/fonts_m.jpg">
</a>
</div>
Javascript 程式碼如下,這裡有多增加限制最小字體是12,最大是16,預設值是13:
var min=12;
var max=16;
function increaseFontSize() {
// 找出所有的<div>
var p = document.getElementsByTagName('div');
// 開始針對找到的<div>迴圈來改變字體
for(i=0; i<p.length; i++) {
// 先確定有fontSize的屬性
if(p[i].style.fontSize) {
var s = parseInt(p[i].style.fontSize.replace("px",""));
} else {
var s = 13;
}
if(s != max) {
s += 1;
}
p[i].style.fontSize = s+"px";
}
}
function decreaseFontSize() {
var p = document.getElementsByTagName('div');
for(i=0;i<p.length;i++) {
if(p[i].style.fontSize) {
var s = parseInt(p[i].style.fontSize.replace("px",""));
} else {
var s = 13;
}
if(s != min) {
s -= 1;
}
p[i].style.fontSize = s+"px";
}
}

沒有留言:
張貼留言