Moovweb SDKを使用しています。テーブルとそのすべての要素を div に変換して、モバイル Web 開発/スタイリングを容易にしたいと考えています。これを行う最善の方法は何ですか?
<body>
<table>
<tbody>
<tr>
<td>
...
</td>
<tr>
</tbody>
</table>
</body>
Moovweb SDKを使用しています。テーブルとそのすべての要素を div に変換して、モバイル Web 開発/スタイリングを容易にしたいと考えています。これを行う最善の方法は何ですか?
<body>
<table>
<tbody>
<tr>
<td>
...
</td>
<tr>
</tbody>
</table>
</body>
と呼ばれる多くのプロジェクトでこの目的のために使用されている関数があります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()
}
}
実際には次の 3 つのことを行います。
mw_was_
以前の各テーブル要素に、その前の要素を持つクラスを与えるdata-mw-id
ます。これら 3 つすべてを使用すると、テーブルの要素の多様性を維持しながら、テーブルを取り除くことができます。このようにして、変換した後でも、XPath と CSS で簡単に選択できます。