3D TagCloud
npm install @labmai.dev/tag-cloud``bash`
$ npm i -S @labmai.dev/tag-cloud-d3
`js
const TagCloud = require('@labmai.dev/tag-cloud-d3');
const container = '.tagcloud';
const texts = [
'3D', 'TagCloud', 'JavaScript',
'CSS3', 'Animation', 'Interactive',
'Mouse', 'Rolling', 'Sphere',
'6KB', 'v2.x',
];
const options = {};
TagCloud(container, texts, options);
`
`html`
`js`
TagCloud(container, texts, options);
返回 tagcloud 实例。
#### container
类型: String 或 HTMLElement 或 Array
用于构造标签云的容器。
#### texts
类型: Array
初始化时的标签文本列表。
#### options
类型: Object
##### options.radius
类型: Number\100
默认值: \px
单位:
滚动半径。
##### options.radiusX
类型: Number\100
默认值: \px
单位:
椭圆滚动半径X。 如果 radiusX 和 radiusY 相等,则滚动为圆形。
##### options.radiusY
类型: Number\100
默认值: \px
单位:
椭圆滚动半径Y。 如果 radiusX 和 radiusY 相等,则滚动为圆形。
##### options.maxSpeed
可选值: 'slow', 'normal', 'fast'\'normal'
默认值:
滚动最大速度。
##### options.initSpeed
可选值: 'slow', 'normal', 'fast'\'normal'
默认值:
滚动初始速度。
##### options.direction
当 radiusX 和 radiusY 不相等时,滚动方向只能填0(上下滚动) 90(左右滚动)。Number
类型: \135
默认值: (向右下滚动)\deg
单位: 顺时针角度
滚动初始方向,例如 0 (向上滚动) , 90 (向左滚动), 135 (向右下滚动) ...
##### options.keep
类型: Boolean\true
默认值:
鼠标移除容器区域时是否保持继续滚动。默认为是 true,减速至初始滚动速度,然后继续随鼠标滚动。
##### options.reverseDirection
类型: Boolean\false
默认值:
当鼠标控制方向时,是否要逆转方向。
##### options.containerClass
类型: String\tagcloud
默认值:
用于 tagcloud 容器的CSS样式 class。
##### options.itemClass
类型: String\tagcloud--item
默认值:
用于 tagcloud 标签项的CSS样式 class。
##### options.useContainerInlineStyles
Type: Boolean\true
Default:
使用正常视图的内联样式添加到 tagcloud 容器上;禁用此选项后,你必须自己添加CSS。
##### options.useItemInlineStyles
类型: Boolean\true
默认值:
使用正常视图的内联样式添加到 tagcloud 标签项上;禁用此选项后,你必须自己添加CSS。
##### options.unit
类型: String\'px'
默认值:
单位。
更新标签文本列表。
暂停标签云动画。
继续标签云动画。
摧毁标签云实例。
以下是示例,点击标签云子项跳转到 Google 去搜索关键字
`javascripthttps://www.google.com/search?q=${e.target.innerText}
let rootEl = document.querySelector('.content');
rootEl.addEventListener('click', function clickEventHandler(e) {
if (e.target.className === 'tagcloud--item') {
window.open(, '_blank');``
// your code here
}
});
MIT