0

我和许多其他人一起浏览了这个网站,但我在任何地方都看不到答案。

我目前有一个带有多个按钮和一个预览窗格的站点。预览窗格中显示的文本因用户当前悬停在的按钮而异。

<body>
<div="preview_pane"> <!--ALL TEXT IS SHOWN HERE --> </div>

<div id="button_group">
   <div class="copy_me" id="stock1"></div> <!--THIS SHOWS STOCK TEXT-->
   <div class="copy_me" id="stock2"></div> <!--COMPLETELY DIFFERENT TEXT-->
   <div class="copy_me" id="stock3"></div> <!--YET SOME OTHER DIFFERENT TEXT-->
   <div class="copy_me" id="stock4"></div> <!--OTHER COMPLETELY DIFFERENT TEXT-->
</div>

</body>

我想要做的是让 zeroclipboard 在任何带有类 copy_me 的按钮上创建 flash 覆盖。所有这些按钮都需要复制预览窗格中显示的文本。

这样,当用户将鼠标悬停在按钮上时,预览窗格中的文本将发生变化,然后当他们单击时,预览窗格中的文本将被复制到用户剪贴板。

我不能手动将脚本添加到每个按钮,因为将有超过 50 个库存文本按钮。

我没有使用 flash 或 javascript 的经验(只涉足 jQuery),所以这对我来说是全新的。

任何帮助将不胜感激。

4

3 回答 3

1

在https://stackoverflow.com/a/26200988/3471658回答了类似的问题

尝试使用http://www.steamdev.com/zclip/它允许您直接访问 jquery,并且您可以在 return 语句中使用自己的逻辑。

包括 jquery.zclip.js 下载并保存 ZeroClipboard.swf

这是一个片段:

$(".class-to-copy").zclip({
    path: "assets/js/ZeroClipboard.swf",
    copy: function(){
        return $(this).attr("data-attribute-with-text-to-copy");
    }
});

确保更改 swf 的路径。

于 2014-10-05T08:40:19.453 回答
0

我快速查看了 zeroclipboard 的 api 文档,我想使用胶水方法,并传递一个 dom 节点数组。在这种情况下,您需要类名为“copy_me”的所有节点,因此:

var clip = new ZeroClipboard();
clip.glue(document.getElementsByClassName('copy_me'));
于 2013-05-08T02:33:42.167 回答
0

你提到了 jQuery。这应该会让你的事情变得更容易:

var client = new ZeroClipboard($('.copy_me'));

请参阅: https ://github.com/zeroclipboard/zeroclipboard/blob/master/docs/instructions.md

另见:http: //jsfiddle.net/rimian/45Nnv/

于 2014-03-11T05:58:44.177 回答