安静
PHP技术博客

140917 discuz解决开启远程静态文件无法适用复制功能

最近发现discuz使用webkit内核的浏览器(火狐、Chrome、Safari等webkit内核的浏览器)来点击帖子的  [复制链接]  ,复制到剪切板的内容不是帖子标题和链接 ,而是:_level0.str

考虑到Discuz X2使用的是 [复制链接] 功能是使用了一个swf文件,而论坛刚刚好开启远程静态文件负载,这个swf文件就在远程服务器上了,考虑到了是不是因为这个原因导致这个功能在相应内核的浏览器上有些小问题呢?

接着测试而IE浏览器下却是正常的,关于这个我找了5个多小时的资料,都找不到解决方法。

最后做了尝试,把这个clipboard.swf文件放回 /static/image/common/ 目录里面去,接着修改/static/js/common_extra.js文件,

  1. var msg = ‘<div class=”c”><div style=”width: 200px; text-align: center; text-decoration:underline;”>点此复制到剪贴板</div>’ +
  2. AC_FL_RunContent(‘id’, ‘clipboardswf’, ‘name’, ‘clipboardswf’, ‘devicefont’, ‘false’, ‘width’, ’200′, ‘height’, ’40′, ‘src’, STATICURL + ‘image/common/clipboard.swf’, ‘menu’, ‘false’,  ‘allowScriptAccess’, ‘sameDomain’, ‘swLiveConnect’, ‘true’, ‘wmode’, ‘transparent’, ‘style’ , ‘margin-top:-20px’) + ‘</div>’;
  3. showDialog(msg, ‘info’);
  4. text = text.replace(/[\xA0]/g, ‘ ‘);
  5. CLIPBOARDSWFDATA = text;

复制代码

修改为:

  1. var msg = ‘<div class=”c”><div style=”width: 200px; text-align: center; text-decoration:underline;”>点此复制到剪贴板</div>’ +
  2. AC_FL_RunContent(‘id’, ‘clipboardswf’, ‘name’, ‘clipboardswf’, ‘devicefont’, ‘false’, ‘width’, ’200′, ‘height’, ’40′, ‘src’,  ‘/static/image/common/clipboard.swf’, ‘menu’, ‘false’,  ‘allowScriptAccess’, ‘sameDomain’, ‘swLiveConnect’, ‘true’, ‘wmode’, ‘transparent’, ‘style’ , ‘margin-top:-20px’) + ‘</div>’;
  3. showDialog(msg, ‘info’);
  4. text = text.replace(/[\xA0]/g, ‘ ‘);
  5. CLIPBOARDSWFDATA = text;

复制代码

即可解决问题。

赞(0) 打赏
未经允许不得转载:AJ's Blog » 140917 discuz解决开启远程静态文件无法适用复制功能
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏