我正在寻找一个jQuery插件来实现文本缩放/页面缩放效果(类似于Firefox 3的ctrl++ / ctrl--),它可以...
使用不同的字体大小设置调整文本大小(即文本缩放/页面缩放)
与复杂的HTML+CSS结构一起使用
这里有什么推荐吗?
我正在寻找一个jQuery插件来实现文本缩放/页面缩放效果(类似于Firefox 3的ctrl++ / ctrl--),它可以...
使用不同的字体大小设置调整文本大小(即文本缩放/页面缩放)
与复杂的HTML+CSS结构一起使用
这里有什么推荐吗?
将contentWidth
设置为您要求的最小可见宽度。
jQuery(document).ready(function(){
jQuery(window).bind('resize load', function(){
contentWidth = 1010;
jQuery('body').css('zoom', jQuery(window).width() / contentWidth);
});
});
已在Chrome浏览器中测试。
body
中使用绝对单位指定基础字体大小,例如 body { font-size: 13pt; }
,然后让其他所有内容使用相对单位,例如 .postTitle { font-size: 120%; }
。$('#enlargeText').click(function () { $(document.body).css('font-size', $(document.body).css('font-size') * 1.5); }这将增加所有相对于
body
的字体大小。$('#enlargeText').click(function () { $('img').each(function () { this.width *= 1.5; }) }但是,这样您仍然无法调整CSS背景图像的大小。据我所知,只有使用不被广泛支持的CSS 3或者在服务器上拥有调整过大小的所有图像的版本才能实现。然后,您可以激活一个新的样式表,引用那些更大/更小的图像。
$.each('img', function () {
this.width *= 1.5;
}
- Rickeach
函数。我使用的那个http://api.jquery.com/each/会为jQuery集合中的每个元素(即每个img
)调用指定的函数。而你提到的第二个函数http://api.jquery.com/jQuery.each/则会为数组的每个元素或对象属性调用一个函数。然而,'img'
是一个固定的字符串,不是一组图像。请解释一下你的反对意见,以及我的示例做错了什么,你的示例又是如何正确的。(请注意,我确实漏掉了一个闭合的“)”符号,现在已经添加上了。) - janmoesenvar currZoom = $("body").css("zoom");
if(currZoom == 'normal') currZoom=1; // For IE
$(".zoomIn").click(function(){
currZoom*=1.2;
$("body").css("zoom",currZoom);
});
$(".zoomOff").click(function(){
jQuery("body").css("zoom",1);
});
$(".zoomOut").click(function(){
currZoom*=.8;
$("body").css("zoom",currZoom);
});
HTML
<span class="zoomIn" style="font-size:120%">A</span>
<span class="zoomOff">A</span>
<span class="zoomOut" style="font-size:80%">A</span>