文本切換大小通過(guò)JS實(shí)現(xiàn)有兩種方法,一種是為元素增加style樣式,另一種是先為元素增加class,然后再定義該class的樣式。效果可以參考本貼切換效果,通過(guò)CSS樣式,還可以擴(kuò)展:全屏模式、閱讀模式等。
為元素增加style樣式
JS部分,把下面JS代碼放在頭部或者底部都可以
<script type="javascript"> function FontZoom(fsize){ var ctext = document.getElementById("field_body"); ctext.style.fontSize = fsize +"px"; } </script>
獲取元素上面是按id,下面是按class
<script type="javascript"> function FontZoom(fsize){var ctext = document.querySelector(".field_body p"); ctext.style.fontSize = fsize+"px"; } </script>
HTML部分
<p class="info"> <span>字體:</span><a href="javascript:FontZoom(20);">[大]</a> <a href="javascript:FontZoom(12);">[小]</a> </p> <p id="field_body" class="field_body"> <h3>標(biāo)題:</h3> <p>正文:</p> </p>
點(diǎn)擊[大]/[小]后,id="field_body"后面增加style樣式,如下
<p id="field_body" class="field_body" style="font-size:12px"> <h3>標(biāo)題:</h3> <p>正文:</p> <!-- 上面按class獲取的元素 <p style="font-size:12px;"></p> --> </p>
這種控制方式并不靈活,推薦用下面的控制方式
為元素增加class
JS部分
<script type="javascript"> /**說(shuō)明:www.vi586.com 1.addClass:為指定的field_body元素添加樣式 2.removeClass:刪除指定field_body元素的樣式 3.toggleClass:如果存在(不存在),就刪除(添加)一個(gè)樣式 4.hasClass:判斷樣式是否存在 */ function hasClass(obj, cls) { return obj.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)')); } function addClass(obj, cls) { if (!this.hasClass(obj, cls)) obj.className += " " + cls; } function removeClass(obj, cls) { if (hasClass(obj, cls)) { var reg = new RegExp('(\\s|^)' + cls + '(\\s|$)'); obj.className = obj.className.replace(reg, ' '); } } function toggleClass(obj,cls){ if(hasClass(obj,cls)){ removeClass(obj, cls); }else{ addClass(obj, cls); } } function toggleClassTest(){ var obj = document. getElementById('field_body'); toggleClass(obj,"big"); } </script>
HTML部分
<p class="info"> <a href="javascript:;" onclick="toggleClassTest()">[切換大/小字體]</a> </p> <p id="field_body" class="field_body"> <h3>標(biāo)題:</h3> <p>正文:</p> </p>
點(diǎn)擊[切換大/小字體]后,為id="field_body"增加class="addclass",如
<p id="field_body" class="field_body big"> <h3>標(biāo)題:</h3> <p>正文:</p> </p>
CSS部分
<style type="text/css"> .field_body h3{font-size:1em;line-height:1.5em} .field_body p{font-size:1em;line-height:1.5em} .big h3{font-size:2em;line-height:2em} .big p{font-size:2.5em;line-height:2.5em} </style>