我正在使用Moovweb SDK,我希望将表及其所有元素转换为div,以方便移动网络开发/样式。做这个的最好方式是什么?
<body>
<table>
<tbody>
<tr>
<td>
...
</td>
<tr>
</tbody>
</table>
</body>
答案 0 :(得分:6)
我在许多名为table_dump
的项目中看到了一个用于此目的的函数。我不能因为发明它而受到赞扬,但这里完全是:
@func XMLNode.table_dump(Text %xpath){
$(%xpath) {
name("div")
add_class("mw_was_table")
$(".//table | .//tr | .//td | .//th | .//thead | .//tfoot | .//tbody | .//col | .//colgroup | .//caption") {
%i = index()
%n = name()
name("div")
attributes(data-mw-id: concat("mw_dump_", %n, %i), width: "")
add_class(concat("mw_was_", %n))
}
yield()
}
}
它确实做了三件事:
mw_was_
及其前一个元素data-mw-id
。有了这三个,你可以摆脱一张桌子,同时保留其元素的多样性。这样,即使在转换它之后,它仍然可以在XPath和CSS中轻松选择。