您的位置:首页 > Web前端 > JavaScript

使用js去掉pre标签前面的空格

2012-05-20 10:14 609 查看
第一次正式的小项目:当碰到<pre>标签的时候,里面的内容总是会在段落开头出现一排空格,在网上找了很久,没有看见解决方案,于是就使用js将其去掉后再显示出来。可能效率不高,但也算自己解决了一个小问题吧。所以便记下来。

pre {
white-space: pre-wrap; /* css-3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
}<!--让pre标签里面的内容碰到父级”容器“时候自动换行-->

function toRightFormat(){
var changeViewObj = document.getElementById("preId");
var changeViewVal = changeViewObj.innerHTML;
var subStrTmp = changeViewVal.indexOf("\n",0);

var subStrTmp_2 = changeViewVal.substring(0,subStrTmp-1).match(/[\S]/);//第一个非空格字符
var subStrTmp_3 = changeViewVal.substring(0,subStrTmp-1).indexOf(subStrTmp_2);//第一个非空格字符所在位置
changeViewObj.innerHTML = changeViewVal.substring(0,subStrTmp-1).substring(subStrTmp_3,subStrTmp);//去掉<pre>前面空格后的第一行
var lastStr = changeViewVal.substring(subStrTmp,changeViewVal.length);//第一行后的所有内容
changeViewObj.innerHTML += "<br>";
var tempStr = "<pre>" + lastStr + "</pre>";//如果不加一个<pre>在里面的话,+=操作会让后面的换行符变成空格。找寻了许多解决方案,最后都没有搞定。于是便使用这个了……
changeViewObj.innerHTML += tempStr;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: