在IE的所有版本中(我目前正在测试IE11)textarea
元素内的新换行符不起作用......
function id_(id)
{
var r = false;
if (document.getElementById(id))
{
r = document.getElementById(id);
}
return r;
}
window.onload = function()
{
for (i in document.getElementsByTagName('audio')[0])
{
id_('test').value = id_('test').value + '\n' +i;
}
}
如何强制IE打破textarea
元素中的行?没有框架。
我已尝试\n\r
,\r\n
,\r
和\n
。
答案 0 :(得分:3)
在IE中,\n
确实在textarea
元素中生成换行符。也就是说,这段代码:
<textarea id="target">default text here</textarea>
<script>document.getElementById('target').value = 'a\nb';</script>
在IE中,会产生一个textarea,其值default text here
保持一段难以想象的短时间,然后是值:
a
b
如果你真的想测试你的浏览器,我把它放在JSFiddle上:http://jsfiddle.net/91mj2arh/
答案 1 :(得分:3)
在最小化代码之后,问题是CSS white-space
属性,我使用下面的代码修复了该属性。
* {white-space: nowrap;}
textarea {white-space: pre;}
答案 2 :(得分:1)
这个基于你的代码的小提琴在我的IE11版本中添加换行符,它似乎完成了你想要迭代audio
元素的属性:
<强> http://jsfiddle.net/ff5kqtru/5/ 强>
如果您发布HTML,我们可能会发现问题。