“HTML5 Canvas和JS库中的选择/拖放功能?”
如果你想使用 HTML5 canvas 来绘制形状、文本和曲线,并且还想附加传统的 DOM 事件,如 onClick 或拖放功能,可以使用 Crossbar 框架 Raphael 来进行拖放操作放下或触摸事件。
此技术针对旧版本的 IE 使用 SVG 和 XML。使用 HTML 进行拖拽如下所示。
示例
<!DOCTYPE html> <html lang = en> <head> <meta charset = utf-8> <title>Raphaël · Drag-n-drop</title> <link rel = stylesheet href = demo.css type = text/css media = screen> <meta name = apple-mobile-web-app-capable content = yes> <link rel = apple-touch-icon-precomposed href = /Raphael.png> <link rel = stylesheet href = demo-print.css type = text/css media = print> <script src = raphael.js></script> <script> window.onload = function () { var R = Raphael(0, 0, 100%, 100%), r = R.circle(100, 100, 50).attr({fill: hsb(0, 1, 1), stroke: none, opacity: .5}), g = R.circle(210, 100, 50).attr({fill: hsb(.3, 1, 1), stroke: none, opacity: .5}), b = R.circle(320, 100, 50).attr({fill: hsb(.6, 1, 1), stroke: none, opacity: .5}), p = R.circle(430, 100, 50).attr({fill: hsb(.8, 1, 1), stroke: none, opacity: .5}); var start = function () { this.ox = this.attr(cx); this.oy = this.attr(cy); this.animate({r: 70, opacity: .25}, 500, >); }, move = function (dx, dy) { this.attr({cx: this.ox + dx, cy: this.oy + dy}); }, up = function () { this.animate({r: 50, opacity: .5}, 500, >); }; R.set(r, g, b, p).drag(move, start, up); }; </script> </head> <body> <div id = holder></div> <p id = copy>Demo of <a href = http://raphaeljs.com/>Raphaël</a>— JavaScript Vector Library</p> </body> </html>
以上就是HTML5 Canvas和JS库中的选择/拖放功能?的详细内容,更多请关注双恒网络其它相关文章!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。