Есть варианты для междоменных активов:
// SWF inbound scripting policy: page domains that the SWF should trust. (single string or array of strings)
trustedDomains: [window.location.host],
См:
https://github.com/zeroclipboard/zeroclipboard/blob/master/docs/instructions.md
Также: текущая основная ветвь (2.x) регистрирует междоменные домены на консоли, если вы установили для debug значение true в конфигурации.
У меня был некоторый успех при использовании размещенной на cdn версии SWF-файла. Но после внесения некоторых изменений это таинственно перестало работать локально, но сработало на моем промежуточном сервере.
Это мой конфиг:
ZeroClipboard.config({
moviePath: '//cdnjs.cloudflare.com/ajax/libs/zeroclipboard/1.3.2/ZeroClipboard.swf',
forceHandCursor: true,
debug: true
});
Также смотрите это jsfiddle:
http://jsfiddle.net/rimian/45Nnv/
Если у вас все еще есть проблемы, вы можете войти с swf на консоль. Для этого вам нужно иметь возможность скомпилировать флэш-память из источника zeroclipboard в swf, используя grunt mxmlc
. Просто отправьте событие журнала в сценарии действия (скомпилируйте и скопируйте его в свой проект) и ответьте на него в своем js:
Например, в ZeroClipboard.as
:
// constructor, setup event listeners and external interfaces
public function ZeroClipboard() {
...
// Get the flashvars
var flashvars:Object = LoaderInfo( this.root.loaderInfo ).parameters;
dispatch("log", flashvars);
...
}
Тогда в вашем JS:
zeroclipboard = new ZeroClipboard($('.mybuttons'))
zeroclipboard.on('log', function(client, args) { console.log('log:', args)});