前几天看到Google Font Api,很简单很好用。今天想着是不是能够再封装一下,于是就试着做了个Jquery的插件。第一次做插件,可能设计上还是有许多不合理,大家多拍砖。
先说说Google Font Api的使用,简单到不能再简单。首先是将
<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Font+Name">
引入,然后就可以直接使用对应的字体样式了。
以下是插件
$.fn.extend({
googleFont:function(font_family,font_size,text_shadow){
if(typeof($("#googleFontApi")[0])=="undefined"){
$("head").append('<link rel="stylesheet" id="googleFontApi" type="text/css" href="http://fonts.googleapis.com/css?family=Tangerine">');
}
$("#googleFontApi").attr("href","http://fonts.googleapis.com/css?family="+font_family);
$(this).css("font-family",font_family+", serif");
if(typeof(font_size)!="undefined")$(this).css("font-size",font_size);else $(this).css("font-size","48px");
if(typeof(text_shadow)!="undefined")$(this).css("text-shadow",text_shadow);
}
});
以下是使用样例
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="jquery.googleFont.js"></script>
<script>
function changeFont(){
var fontStyle=$("#fontStyle").attr("value");
$("h1").googleFont(fontStyle);
}
function addShadow(){
var fontStyle=$("#fontStyle").attr("value");
$("h1").googleFont(fontStyle,"36px","4px 4px 4px #aaa");
}
</script>
</head>
<body onLoad="changeFont()">
<h1>Making the Web Beautiful!</h1>
<input type="text" id="fontStyle" value="Tangerine" />
<input type="button" onclick="changeFont()" value="changeFont" />
<input type="button" onclick="addShadow()" value="addTextShadow" />
</body>
</html>
可用的Fonts可以从http://code.google.com/webfonts 查看。
Google Font Api还提供了粗体斜体的支持,使用的话就是在fontFamily后面加上冒号再加参数,这个版本的插件里暂时还没有支持。
需要注意的一点就是页面载入字体样式需要一小段时间,载入状态可以从状态栏里看到。
在ff 3.6.3和chrome 5.0.375.55下测试通过。

本文介绍了一个简单的jQuery插件,用于封装Google Fonts API,使得开发者可以更方便地在网页中应用各种字体样式。该插件允许用户通过简单的API调用更改字体家族、大小及阴影效果。

被折叠的 条评论
为什么被折叠?



