2

我正在尝试在 Rails 项目中使用ZeroClipboardZeroClipboard.min.js ,虽然和ZeroClipboard.swf加载很好,但当我将鼠标悬停在div附加的 Flash 电影上时,我收到此错误(并且没有任何效果)。

Uncaught TypeError: Object #<HTMLEmbedElement> has no method 'setSize'

我正在使用、复制粘贴 GitHub 页面上的示例,并明确设置电影路径 epath:

  <html>
  <body>
    <div id="d_clip_button" data-clipboard-text="Copy Me!" title="Click to copy." style="border:1px solid black; padding:20px;">Copy To Clipboard</div>

    <script type="text/javascript" src="/assets/lib/ZeroClipboard.js"></script>
    <script language="JavaScript">
      ZeroClipboard.setMoviePath("/assets/lib/ZeroClipboard.swf");
      var clip = new ZeroClipboard.Client('#d_clip_button');
    </script>
  </body>
  </html>

如果我在非 Rails 服务器上运行此表单,则此方法有效,但是当我在本地或远程登台服务器上运行它时,出现上述错误。

有任何想法吗?

4

1 回答 1

3

我在使用带有 Turbolinks 的 ZeroClipboard 时看到了这个错误。我能够通过添加来解决它:

$(document).on "page:before-change", ->
  ZeroClipboard.destroy()

application.js.coffee. YMMV。

于 2013-09-25T15:53:38.480 回答