TranslateToken - bhsd-harry/wikiparser-node GitHub Wiki

目录

Other Languages

简介

扩展:Translate 中的 <translate> 标签。这个类继承了 TagPairToken 类的全部属性和方法,这里不再列出。

✅ 在 MiniBrowser 版本中可用。
🌐 在 Browser 版本中可用。

Properties

TagPairToken 继承的属性

type

✅ 展开

type: string

// type
var {firstChild} = Parser.parse('<translate></translate>');
assert.equal(firstChild, '<translate></translate>');
assert.strictEqual(firstChild.type, 'translate');

Methods

cloneNode

展开

returns: this
深拷贝节点。

// cloneNode (main)
var {firstChild} = Parser.parse('<translate>a</translate>');
assert.equal(firstChild, '<translate>a</translate>');
assert.deepStrictEqual(firstChild.cloneNode(), firstChild);
({firstChild} = Parser.parse('<translate nowrap>a</translate>'));
assert.equal(firstChild, '<translate nowrap>a</translate>');
assert.deepStrictEqual(firstChild.cloneNode(), firstChild);

getAttr

展开

param: string 属性键
returns: string | true
获取 nowrap 属性。

// getAttr (main)
var {firstChild} = Parser.parse('<translate nowrap></translate>');
assert.equal(firstChild, '<translate nowrap></translate>');
assert.strictEqual(firstChild.getAttr('nowrap'), true);
assert.strictEqual(firstChild.getAttr('x'), undefined);

hasAttr

展开

param: string 属性键
returns: boolean
标签是否具有 nowrap 属性。

// hasAttr (main)
var {firstChild} = Parser.parse('<translate nowrap></translate>');
assert.equal(firstChild, '<translate nowrap></translate>');
assert.ok(firstChild.hasAttr('nowrap'));
assert.ok(!firstChild.hasAttr('x'));

print

🌐 展开

returns: string
以HTML格式输出。

// print
var {firstChild} = Parser.parse('<translate nowrap>\n</translate>');
assert.equal(firstChild, '<translate nowrap>\n</translate>');
assert.strictEqual(
	firstChild.print(),
	`<span class="wpb-ext">&lt;translate<span class="wpb-ext-attrs"> <span class="wpb-ext-attr"><span class="wpb-attr-key">nowrap</span></span></span>&gt;<span class="wpb-ext-inner">
</span>&lt;/translate&gt;</span>`,
);

removeAttr

展开

param: string 属性键
移除 nowrap 属性。

// removeAttr (main)
var {firstChild} = Parser.parse('<translate nowrap></translate>');
assert.equal(firstChild, '<translate nowrap></translate>');
firstChild.removeAttr('nowrap');
assert.equal(firstChild, '<translate></translate>');

setAttr

展开

param: string | Record<string, boolean> 属性键或属性对象
param: boolean 属性值
设置 nowrap 属性。

// setAttr (main)
var {firstChild} = Parser.parse('<translate></translate>');
assert.equal(firstChild, '<translate></translate>');
firstChild.setAttr('nowrap', true);
assert.equal(firstChild, '<translate nowrap></translate>');
firstChild.setAttr({nowrap: false});
assert.equal(firstChild, '<translate></translate>');

toggleAttr

展开

param: string 属性键
开关 nowrap 属性。

// toggleAttr (main)
var {firstChild} = Parser.parse('<translate nowrap></translate>');
assert.equal(firstChild, '<translate nowrap></translate>');
firstChild.toggleAttr('nowrap');
assert.equal(firstChild, '<translate></translate>');

toHtml

展开

returns: string
转换为 HTML。

// toHtml (main)
var {firstChild} = Parser.parse('<translate><!--T:1--> a</translate>');
assert.equal(firstChild, '<translate><!--T:1--> a</translate>');
assert.strictEqual(firstChild.toHtml(), 'a');
⚠️ **GitHub.com Fallback** ⚠️