Appearance
如何控制下载
注意:控制下载功能,需要特定渠道代码,如需测试,请联系support@mindshow.fun
点击下载后,会给父窗口发送postmessage,格式为
{
"type": "download", //postmessage的type,不要修改
"format": "pptx", //下载格式,为pdf或者pptx
"user": "15000000000", //用户唯一标识
"ppttitle": "上海一日游" //要下载的ppt的标题
"animation": "click" //如果type是pptx,此参数返回动画的类型,click为点击播放,page为自动播放
}父窗口接收到之后,可以依据用户user的下载情况,告知嵌套的子窗口,是否允许用户进行下载
{
type:'download', //postmessage的type,不要修改
hasRight:true, //告知子窗口是否有权限下载,没有权限写false
data:{
type:'pptx', //下载格式,为pdf或者pptx
message:'您的下载额度已经用完', //没有权限下载时的提醒文案
animation:'click' //如果type是pptx,此参数为动画的类型,click为点击播放,page为自动播放
}父窗口接收下载请求及回复的代码示例:
//监听message事件
window.addEventListener('message', function (e) {
console.log('父窗口接收到了',JSON.parse(e.data));
let data = JSON.parse(e.data)
if (data.type == 'download') {
if (data.format == 'pptx') {
//2秒后发送消息给子窗口
setTimeout(function () {
var data = {
type:'download',
hasRight:true,
data:{
type:'pptx',
message:'您的下载额度已经用完'
}
};
var wn = document.getElementById("resultFrame").contentWindow;
wn.postMessage(JSON.stringify(data), 'http://localhost:3000');
}, 1000);
}
if (data.format == 'pdf') {
//2秒后发送消息给子窗口
setTimeout(function () {
var data = {
type:'download',
hasRight:true,
data:{
type:'pdf',
message:'您的下载额度已经用完'
}
};
var wn = document.getElementById("resultFrame").contentWindow;
wn.postMessage(JSON.stringify(data), 'https://www.mindshow.fun');
}, 1000);
}
}
}, false);