代理加盟 2019全新代理计划 赚钱+省钱双管齐下,独立平台,丰厚利润!

您现在的位置: 188bet网 > 站长学院 > 建站教程 >

点击切换文章大小字体功能JS

来源:未知 发布时间:2019-03-30热度:我要评论
文本切换大小通过JS实现有两种方法,一种是为元素增加style样式,另一种是先为元素增加class,然后再定义该class的样式。效果可以参考本贴切换效果,通过CSS样式,还可以扩展:全屏模式、阅读模式等。 为元素增加style样式 JS部分,把下面JS代码放在头部或者底部都可以...

       文本切换大小通过JS实现有两种方法,一种是为元素增加style样式,另一种是先为元素增加class,然后再定义该class的样式。效果可以参考本贴切换效果,通过CSS样式,还可以扩展:全屏模式、阅读模式等。

为元素增加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>标题:</h3>
 <p>正文:</p>
</p>

       点击[大]/[小]后,id="field_body"后面增加style样式,如下

<p id="field_body" class="field_body" style="font-size:12px">
 <h3>标题:</h3>
 <p>正文:</p>
 <!--
  上面按class获取的元素
  <p style="font-size:12px;"></p>
  -->
</p>

       这种控制方式并不灵活,推荐用下面的控制方式

为元素增加class

JS部分

<script type="javascript">
/**说明:www.vi586.com
1.addClass:为指定的field_body元素添加样式
2.removeClass:删除指定field_body元素的样式
3.toggleClass:如果存在(不存在),就删除(添加)一个样式
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>标题:</h3>
 <p>正文:</p>
</p>

点击[切换大/小字体]后,为id="field_body"增加class="addclass",如

<p id="field_body" class="field_body big">
 <h3>标题:</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>

本文地址:http://www.ms88kzm.com/news/1392.html

    责任编辑:188bet网