Skip to content

TdToken

bhsd edited this page Jan 15, 2024 · 17 revisions

Other Languages

简介

表格单元格。

✅ 在 MiniBrowser 版本中可用。

Properties

subtype

✅ 展开

type: 'td' | 'th' | 'caption'
单元格类型。

// subtype
var [caption, th, td] = Parser.parse('{|\n|+\n!\n|\n|}').querySelectorAll('td');
assert.equal(caption, '\n|+');
assert.equal(th, '\n!');
assert.equal(td, '\n|');
assert.strictEqual(caption.subtype, 'caption');
assert.strictEqual(th.subtype, 'th');
assert.strictEqual(td.subtype, 'td');
th.subtype = 'td';
assert.equal(th, '\n|');

rowspan

展开

type: number

// rowspan
var td = Parser.parse('{|\n|\n|}').querySelector('td');
assert.equal(td, '\n|');
assert.strictEqual(td.rowspan, 1);
td.rowspan = 2;
assert.equal(td, '\n|rowspan="2"|');

colspan

展开

type: number

// colspan
var td = Parser.parse('{|\n|\n|}').querySelector('td');
assert.equal(td, '\n|');
assert.strictEqual(td.colspan, 1);
td.colspan = 2;
assert.equal(td, '\n|colspan="2"|');

innerText

展开

type: string
内部wikitext。

// innerText
var td = Parser.parse('{|\n|\n|}').querySelector('td');
assert.equal(td, '\n|');
assert.strictEqual(td.innerText, '');
td.innerText = 'a';
assert.equal(td, '\n|a');

Methods

lint

✅ 展开

returns: LintError[]
报告潜在语法错误。

// lint
var td = Parser.parse('{|\n|rowspan=2|a|b\n|}').querySelector('td');
assert.equal(td, '\n|rowspan=2|a|b');
assert.deepEqual(td.lint(), [
	{
		severity: 'warning',
		message: 'additional "|" in a table cell',
		startLine: 1,
		startCol: 11,
		startIndex: 14,
		endLine: 1,
		endCol: 14,
		endIndex: 17,
	},
]);

isIndependent

展开

returns: boolean
是否位于行首。

// isIndependent
var [a, b] = Parser.parse('{|\n!a||b\n|}').querySelectorAll('td');
assert.equal(a, '\n!a');
assert.equal(b, '||b');
assert(a.isIndependent());
assert(!b.isIndependent());

cloneNode

展开

returns: this
深拷贝节点。

// cloneNode
var th = Parser.parse('{|\n!a\n|}').querySelector('td');
assert.equal(th, '\n!a');
assert.deepStrictEqual(th.cloneNode(), th);
Clone this wiki locally