javascript文本区域行数
我需要数一数textarea中的所有行。 我的代码: 在Firefox和Chrome中效果很好。 在歌剧中,它还会再来一次 我试试这个:javascript文本区域行数,javascript,opera,Javascript,Opera,我需要数一数textarea中的所有行。 我的代码: 在Firefox和Chrome中效果很好。 在歌剧中,它还会再来一次 我试试这个: function textareaCurLineNum(obj) { if (!/Opera/.test(navigator.userAgent)){ return obj.value.split(/[\r\n]/g).length; } else { return obj.value.split(/[\r\n]
function textareaCurLineNum(obj)
{
if (!/Opera/.test(navigator.userAgent)){
return obj.value.split(/[\r\n]/g).length;
} else {
return obj.value.split(/[\r\n]/g).length-1;
}
}
现在,如果lines=3,opera返回4,4行-6,5行-8。
哪里有问题?方括号包含一组符号,而不是序列。在regexp中按\n拆分
function textareaCurLineNum(obj)
{
if (!/Opera/.test(navigator.userAgent)){
return obj.value.split(/\n/g).length;
} else {
return obj.value.split(/\n/g).length-1;
}
}
方括号包含一组符号,而不是序列。在regexp中按\n拆分
function textareaCurLineNum(obj)
{
if (!/Opera/.test(navigator.userAgent)){
return obj.value.split(/\n/g).length;
} else {
return obj.value.split(/\n/g).length-1;
}
}
仅在
\n
上尝试拆分。你写它的方式-如果我有:
first line \r\n
second line
此拆分将返回3,因为它将\r
和\n
之间的空值作为一行计算
一个更可靠的解决方案是,首先将所有
\r\n
(win)替换为\r
(mac),然后在\n
上拆分,然后只尝试在\n
上拆分。你写它的方式-如果我有:
first line \r\n
second line
此拆分将返回3,因为它将\r
和\n
之间的空值作为一行计算
一个更强大的解决方案是首先将所有
\r\n
(win)和\r
(mac)替换为\n
,然后在\n
上拆分。谢谢。函数textareaCurLineNum(obj){return obj.value.split(/\n/g).length;}
工作正常。不要使用浏览器嗅探!这使得Opera无法在不破坏网站的情况下改变行为以与其他浏览器保持一致。谢谢。函数文本AreaCurlineum(obj){return obj.value.split(/\n/g).length;}
工作正常。不要使用浏览器嗅探!这使得Opera不可能在不破坏网站的情况下改变行为以与其他浏览器保持一致。