你的位置:首页 > Java教程

[Java教程]IE10/11克隆textarea时 bug


重现代码

<!doctype html><html>  <head>    <meta charset="UTF-8">  </head>  <body>    <script type="text/javascript">			var ta= document.createElement('textarea')			ta.placeholder = 'text'			var clone = ta.cloneNode(true)			document.body.appendChild(clone)			alert(clone.value)    </script>  </body></html>

以上网页代码,在 IE10/11 中输出如下

 

可以看到IE10/11克隆时竟然把值赋给了value,这是一个的bug。

 

其它浏览器输出的均是空字符串。

 

判断是否有该bug的函数提取如下

var hasTextareaCloneBug = function() {  var t = document.createElement('textarea')  t.placeholder = 't'  return t.cloneNode(true).value === 't'}()