NetEaseWD / NEJ

跨平台WEB前端开发框架
Other
55 stars 13 forks source link

chainable在用html字符串生成DOM节点时,某些情况不正确 #8

Closed satlxq closed 8 years ago

satlxq commented 9 years ago

在生成表格行,用$(htmlString) 时,返回的节点不正确; 比如

var _htmlString = '<tr><td>col1</td>col2<td></td></tr>';
console.log($(_htmlString));
leeluolee commented 9 years ago

暂时不要用这种写法 。现在的支持度没有jQuery那种完成度的, 毕竟只是原接口的一层门面而已。 div.innerHTML 设置 table类的子元素 取不到正确的结果, 需要做比较多的额外的处理。

Chain本身应该不会去处理这个逻辑了 ,后期会依赖 html2node 去完成功能。 目前你的问题html2node也有,我会联系 @genify 来跟进这个问题

genify commented 9 years ago

收到,目前标签的容错及对非正常嵌套的html代码处理比较弱,完全依赖于浏览器的innerHTML的解析能力,只是简单的侦测了li/option/td/tr的起始标签,没有处理错误嵌套标签和平台差异(部分情况可能出错),后续可根据平台适配部分错误或非正常嵌套的标签,目前可以先将完整的嵌套结构作为输入,比较常见的如:

'<table><tr><td>col1</td><td>col2</td></tr></table>'
'<ul><li>xxx</li></ul>'
'<select><option>xxx</option></select>'

genify commented 8 years ago

This issue was moved to NEYouFan/nej-framework#8