用 javascript 控制超长英文字符串换行

超长英文字符串的换行问题相信大家都不会陌生,IE 专有属性 “word-wrap” 不符合 WEB 标准,不能兼容多种浏览器,本文介绍的是用 javascript 控制超长英文字符串换行的解决方案。

用 javascript 控制超长英文字符串换行 – 示例

<script language="JavaScript" type="text/javascript">
<!--
// 说明:用 javascript 控制超长英文字符串换行
// 整理:http://www.CodeBit.cn

/*
 * 长字符串换行
 * @ bigString	长字符串
 * @ m 换行长度
 * @ b 分隔符
 * @ c 是否强制换行
 *
 */
var wordWrap = function(bigString, m, b, c){
    var i, j, s, r = bigString.split("\n");
    if(m > 0) for(i in r){
        for(s = r[i], r[i] = ""; s.length > m;
            j = c ? m : (j = s.substr(0, m).match(/\S*$/)).input.length - j[0].length
            || m,
            r[i] += s.substr(0, j) + ((s = s.substr(j)).length ? b : "")
        );
        r[i] += s;
    }
    return r.join("\n");
};

alert(wordWrap("My world is biiiiiiiiiiiiig", 10, "\n", true));
alert(wordWrap("My world is biiiiiiiiiiiiig", 10, "\n", false));

//-->
</script>

关于 Artlover

有多年 web 开发经验,擅长领域 PHP / MySQL / CSS / Javascript / Zend Framework ,期望:在分享中共同成长。
此条目发表在 Javascript 分类目录,贴了 , , , , 标签。将固定链接加入收藏夹。

用 javascript 控制超长英文字符串换行》有 2 条评论

  1. stone 说:

    有没有控制中文的啊?

  2. CodeBit.cn 说:

    TO: stone
    中文一般不会出现这种现象

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*


*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>