Paper.js互操作性

Kel*_*vey 7 html javascript interop paperjs

我想从我的页面中的HTML按钮调用paper.js函数,但我相信paper.js函数存在于它们自己的范围内.paper.js文档提到互操作性,这听起来像是正确的直接然后带我到一个"即将推出"的页面:

http://paperjs.org/tutorials/getting-started/paperscript-interoperability/

有谁知道如何从我的HTML页面调用在paper.js脚本中创建的函数?

Jür*_*hni 5

为缺少的教程道歉。最后我真的会花一些时间来写它。

我去年在邮件列表上回答过这个问题:https : //groups.google.com/d/msg/paperjs/C6F0XFlplqM/_67AMqCR_nAJ

Scoped PaperScript 在全局范围内运行,并且可以访问全局范围的所有元素。在全局范围(= window)中运行的普通 JavaScript 不会看到这些 PaperScope,也无法访问它们的变量。

有一个简单的解决方案来交换两者之间的信息:只需声明一个全局结构,用于来回交换 tings,例如

window.globals = {
    someValue: 10,
    someFunction: function() { alert(globals.someValue); }
};
Run Code Online (Sandbox Code Playgroud)

在您的 PaperScript 中,您可以简单地通过“全局变量”访问它,因为它在窗口范围内:

globals.someValue = 20;
globals.someFunction();
Run Code Online (Sandbox Code Playgroud)

同样,您可以在普通 JavaScript 中使用这种结构。