我想增加 a 和 p 元素的字体大小,但它本身,一个增加字体的元素是一个锚元素,所以它会随着按下而增加,但这是错误的,不会发生。
HTML:
<div class="fontsize">
<a class="fontSizePlus" href="#">A+</a>
|
<a class="fontReset" href="#" style="font-size: 17px;">Reset</a>
|
<a class="fontSizeMinus" href="#" style="font-size: 17px;">A-</a>
</div>
到目前为止,我尝试了各种定位解决方案,例如:
var elm = $('p, a:not("a.fontSizePlus")');
显然没有运气。
jQuery:
<script type="text/javascript">
$(document).ready(function () {
//min font size
var min=9;
//max font size
var max=16;
//grab the default font size
var reset = $('p').css('fontSize');
//font resize these elements
var elm = $('p, a:not("a.fontSizePlus")');
//set the default font size and remove px from the value
var size = str_replace(reset, 'px', '');
//Increase font size
$('a.fontSizePlus').click(function() {
//if the font size is lower or equal than the max value
if (size<=max) {
//increase the size
size++;
//set the font size
elm.css({'fontSize' : size});
}
//cancel a click event
return false;
});
$('a.fontSizeMinus').click(function() {
//if the font size is greater or equal than min value
if (size>=min) {
//decrease the size
size--;
//set the font size
elm.css({'fontSize' : size});
}
//cancel a click event
return false;
});
//Reset the font size
$('a.fontReset').click(function () {
//set the default font size
elm.css({'fontSize' : reset});
});
});
//A string replace function
function str_replace(haystack, needle, replacement) {
var temp = haystack.split(needle);
return temp.join(replacement);
}
</script>