主题
事件
ActiveSlideChange
监听页面跳转
语法
表达式.Sub.ActiveSlideChange = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 监听页面跳转
app.Sub.ActiveSlideChange = async curryPage => {
console.log('切换到:', curryPage)
}
}
SlideShowBegin
监听进入幻灯片全屏播放
语法
表达式.Sub.SlideShowBegin = Function
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 监听进入幻灯片全屏播放
app.Sub.SlideShowBegin = async () => {
console.log('进入')
}
setTimeout(async () => {
// 切换到 PPT 全屏播放状态
await app.ActivePresentation.SlideShowSettings.Run()
}, 2000)
}
LastSlideEnd
JSSDK: v1.1.14+、WebOffice v3.2.1+ 支持
监听放映到最后时发送通知
语法
表达式.Sub.LastSlideEnd = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听事件
app.Sub.LastSlideEnd = Date => {
console.log('监听放映到最后时发送通知:', Data)
}
}
OnDiagramMount
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
仅支持 PC 端
监听关系图的挂载和卸载
操作方式:
- 注册事件
Sub.OnDiagramMount
- 选中关系图,触发挂载监听
- 取消选中关系图,触发卸载监听
语法
表达式.Sub.OnDiagramMount = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 监听关系图的挂载和卸载
app.Sub.OnDiagramMount = d => {
console.log('监听关系图挂载和卸载:', d)
}
}
OnDiagramToggleBtns
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
仅支持 PC 端
监听关系图移动和缩放
操作方式:
- 注册事件
Sub.OnDiagramToggleBtns
- 选中关系图
- 移动和停止移动触发事件,打印信息(根据移动和停止的监听,控制按钮组样式、项数、颜色的显示隐藏)
- 缩放关系图触发事件,打印信息(根据缩放和停止缩放的监听,控制按钮组样式、项数、颜色的显示隐藏)
语法
表达式.Sub.OnDiagramToggleBtns = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 监听关系图移动和缩放
app.Sub.OnDiagramToggleBtns = d => {
console.log('监听关系图移动和缩放:', d)
}
}
PresentationNewSlide
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
监听 PPT 的新增操作
语法
表达式.Sub.PresentationNewSlide = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 PPT 的新增操作
app.Sub.PresentationNewSlide = d => {
console.log('监听 PPT 的新增操作:', d)
}
}
SlideChangeOperator
JSSDK: v1.1.11+、WebOffice v2.5.1+ 支持
监听服务端幻灯片更新后通知当前操作者(用户新增、移动、删除幻灯片后触发)
语法
表达式.Sub.SlideChangeOperator = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听事件
app.Sub.SlideChangeOperator = Date => {
console.log(
'监听服务端幻灯片更新后通知当前操作者(用户新增、移动、删除幻灯片后触发):',
Data
)
}
}
SlideDelete
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
监听 PPT 的删除操作
语法
表达式.Sub.SlideDelete = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 PPT 的删除操作
app.Sub.SlideDelete = d => {
console.log('监听 PPT 的删除操作:', d)
}
}
SlideInkToolbarVisible
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
仅支持 PC 端
监听 是否使用激光笔和标注
语法
表达式.Sub.SlideInkToolbarVisible = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 窗口对象
const SlideShowWindow = await app.ActivePresentation.SlideShowWindow
// 视图对象
const view = await SlideShowWindow.View
// 监听 是否使用激光笔和标注
app.Sub.SlideInkToolbarVisible = ({ Data }) => {
console.log('监听 是否使用激光笔和标注:', Data)
}
// 设置标记工具栏出现
view.MarkerEditVisible = true
}
SlideInkVisible
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
仅支持 PC 端
监听 是否显示标注内容
语法
表达式.Sub.SlideInkVisible = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 窗口对象
const SlideShowWindow = await app.ActivePresentation.SlideShowWindow
// 视图对象
const view = await SlideShowWindow.View
// 监听 是否显示标注内容
app.Sub.SlideInkVisible = ({ Data }) => {
console.log('监听 是否显示标注内容:', Data)
if (Data.showmark) {
setTimeout(() => {
view.PointerVisible = false
}, 2000)
}
}
}
SlideLaserPenInkPointsChanged
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
仅支持 PC 端
监听 发送激光笔的墨迹
语法
表达式.Sub.SlideLaserPenInkPointsChanged = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 发送激光笔的墨迹
app.Sub.SlideLaserPenInkPointsChanged = ({ Data }) => {
console.log('监听 发送激光笔的墨迹:', Data)
}
}
SlideMediaChanged
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
监听 视频播放状态改变
语法
表达式.Sub.SlideMediaChanged = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 视频播放状态改变
app.Sub.SlideMediaChanged = ({ Data }) => {
console.log('监听 视频播放状态改变:', Data)
}
}
SlideMove
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
监听 PPT 的移动
语法
表达式.Sub.SlideMove = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 PPT 的移动
app.Sub.SlideMove = d => {
console.log('监听 PPT 的移动:', d)
}
}
SlidePlayerChange
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
监听 播放状态改变
语法
表达式.Sub.SlidePlayerChange = eventHandle
表达式:文档类型应用对象
示例
//@file=base.ppt
async function example() {
await instance.ready()
const app = instance.Application
// 监听 播放状态改变
app.Sub.SlidePlayerChange = ({ Data }) => {
console.log('监听 播放状态改变:', Data)
}
}
SlideSelectionChanged
监听当前页改变事件
语法
表达式.Sub.SlideSelectionChanged = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 监听当前页改变事件
app.Sub.SlideSelectionChanged = async curryPage => {
console.log('切换到:', curryPage)
}
}
SlideShowEnd
监听退出幻灯片全屏播放
语法
表达式.Sub.SlideShowEnd = Function
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 切换到 PPT 全屏播放状态
await app.ActivePresentation.SlideShowSettings.Run()
// 监听退出幻灯片全屏播放
app.Sub.SlideShowEnd = async () => {
console.log('退出')
}
// 3 秒后退出全屏播放
setTimeout(async () => {
await app.ActivePresentation.SlideShowWindow.View.Exit()
}, 3000)
}
SlideShowOnNext
监听下一步动画操作
语法
表达式.Sub.SlideShowOnNext = Function
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 切换到 PPT 全屏播放状态
await app.ActivePresentation.SlideShowSettings.Run()
// 监听下一步动画操作
app.Sub.SlideShowOnNext = async () => {
console.log('下一步')
}
// 3 秒后执行下一步操作
setTimeout(async () => {
await app.ActivePresentation.SlideShowWindow.View.GotoNextClick()
}, 3000)
}
SlideShowOnPrevious
监听上一步动画操作
语法
表达式.Sub.SlideShowOnPrevious = Function
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 切换到 PPT 全屏播放状态
await app.ActivePresentation.SlideShowSettings.Run()
// 监听上一步动画操作
app.Sub.SlideShowOnPrevious = async () => {
console.log('上一步')
}
// 3 秒后执行下一步
setTimeout(async () => {
await app.ActivePresentation.SlideShowWindow.View.GotoNextClick()
}, 3000)
// 5 秒后执行上一步
setTimeout(async () => {
await app.ActivePresentation.SlideShowWindow.View.GotoPreClick()
}, 5000)
}
TriggerPlayEvent
JSSDK: v1.1.9+、WebOffice v2.3.1+ 支持
触发器动画事件
语法
表达式.Sub.TriggerPlayEvent = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 触发器动画事件
app.Sub.TriggerPlayEvent = curryPage => {
console.log('触发器动画:', curryPage)
}
}
VideoFullscreenInfo
JSSDK: v1.1.14+、WebOffice v3.4.1+ 支持
仅支持 PC 端
演示视频进入/退出全屏播放的事件监听
语法
表达式.Sub.VideoFullscreenInfo = eventHandle
表达式:文档类型应用对象
示例
//@file=base.pptx
async function example() {
await instance.ready()
const app = instance.Application
// 演示视频进入/退出全屏播放的事件监听
app.Sub.VideoFullscreenInfo = async () => {
console.log('全屏状态切换')
}
}